none
DBF file size limitations

    Question

  • With a foxpro application consisting of many individual, interlinked dbf files is there a maximum for the total size of all the dbf's? Or is the maximum dbf file size per each individual dbf file?

    Thank you.

    Monday, April 4, 2011 9:11 PM

Answers

All replies

  • The 2GB limit is per file (DBF or FPT)
    For every expert, there is an equal and opposite expert. - Becker's Law

    Naomi Nosonovsky, Sr. Programmer-Analyst

    My blog
    Monday, April 4, 2011 9:43 PM
    Moderator
  • 2gb limit is per individual file. So overall the only concern is how large the largest table will grow.

    Bye, Olaf.


    Monday, April 4, 2011 9:47 PM
  • I would say the main limitation is the time consuption when working on several 2 gig files simultaneously... thus you have to code for such data access very carefuly. To use classic xBase commands (SEEK, SCAN WHILE) is obviously better and faster than SQL-SELECT command from several joined tables.
    Monday, April 4, 2011 10:19 PM
    Moderator
  • Hi Robert,

     

    Thanks for posting in the MSDN Forum.

     

    Any update? I have marked Naomi and olaf's replies as answer, if you think it provides no help, please unmark it, and  feel free to let me know your any concerns.

     

    Thank you for your understanding and support.

     

    Best Regards,
    Mike Feng [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    Wednesday, April 20, 2011 9:35 AM
    Moderator
  • Not quiet correct .

    My Dbf's is more than 15GB at the moment, sorry cant add screenshot because of limitations

    Tuesday, October 3, 2017 4:05 PM
  • The limitation is not for the DBF file size but for the size which is Visual FoxPro able to process by native xBase commands. Of course, other tools or libraries can handle files bigger than 2 GB.

    Tuesday, October 3, 2017 4:44 PM
    Moderator
  • It's not a Foxpro DBF, then.

    It could be an Advantage Database DBF file with 64bit offsets, see https://archive.sap.com/documents/docs/DOC-39207

    Quote: Using a larger value to track the file offsets allows Advantage to access DBF files that exceed 2GB in size. However, the native VFP driver will no longer recognize this file as a valid table.

    You can access such DBFs only via Advantage Database ODBC driver, not nativley via USE and language integrated SQL, etc.

    Also, there are others, who extended the DBF format beyond 2GB already, it always breaks compatibility with VFP, as VFP index nodes use 32bit pointers, eg Memo fields in a DBF are 4 Byte (32 Bit) pointers into the FPT file (roughly speaking). There is no downward compatible way to change this, so the VFP engine still also can use this DBF natively. CDX index nodes have record numbers as leaf nodes, that can address 2G records, which could exceed 2GB easily, but that doesn't solve the Memo problem.

    Anyway, there is no big secret behind larger DBFs, hey're just not FoxPro DBFs.

    Bye, Olaf.


    Olaf Doschke - http://www.doschke.name

    Wednesday, October 4, 2017 4:46 AM