How to Open dBASE Table with Nonstandard File Extension

Last reviewed: June 21, 1995
Article ID: Q101742
The information in this article applies to:

- Microsoft Visual Basic for Windows, version 3.0

SUMMARY

To open a dBASE table file that has a non-standard file extension, specify the table name as <filename>#<extension>.

MORE INFORMATION

The standard file extension used by dBASE for tables is .DBF. In Visual Basic version 3.0 using the dBASE installable ISAMs, you can open a table by specifying the file name without this extension because the dBASE installable ISAM assumes the extension to be .DBF by default. If you specify the extension <filename>.<extension>, the dBASE installable ISAM will not recognize it and will give you the following error message:

   <filename>.<extension> isn't a valid name.

To open a dBASE table file that has a non-standard file extension, specify the table name as <filename>#<extension>. The dBASE installable ISAM interprets the pound sign (#) in the table name as a period and opens the dBASE table.

Example

The following code example demonstrates how to open a dBASE table file that has a non-standard file extension (AUTHORS.OLD) and print the first field of all records in the table to the form. The following example assumes that you have a dBASE III table with a file name of AUTHORS.OLD located in the C:\DBASEIII\OLDBOOKS directory. You may need to modify the example and create a dBASE III database with a table called AUTHORS.OLD in order for it to work correctly.

  1. Start Visual Basic or from the File menu, choose New Project (ALT, F, N) if Visual Basic is already running. Form1 is created by default.

  2. Add a Command Button (Command1) to Form1.

  3. Add the following code to the Click event of Command1:

       Sub Command1_Click()
          Dim db As Database
          Dim OldAuthors As Table
    
          Connect$ = "dBASE III"          ' Specify database type
          dbName$ = "C:\DBASEIII\OLDBOOKS"      ' Specify database directory
    
          Set db = OpenDatabase(dbName$, False, False, Connect$)
          Set OldAuthors = db.OpenTable("Authors#Old") ' Open table
          While Not OldAuthors.EOF
             Print OldAuthors(0)           ' Print field(0) to the form
             OldAuthors.MoveNext           ' for all records.
          Wend
    
          OldAuthors.Close
          db.Close
       End Sub
    
    

  4. Run the example.

  5. Click the Command1 button.


Additional reference words: 3.00
KBCategory: kbinterop kbprg kbcode
KBSubcategory: APrgDataIISAM


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: June 21, 1995
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.