FoxPro table format

<< Click to Display Table of Contents >>

Navigation:  Tables > Data table formats > FoxPro >

FoxPro table format

Previous pageReturn to chapter overviewNext page

The FoxPro / .dbf data table format

As a spin off from the dBASE development the FoxPro emerged in 1984 (as FoxBASE) as an independent dBASE clone (an "xBase" application) using basically the same .dbf table format as the dBASE (see below).

The FoxPro table version 2.5 ("level 25" in BDE terms) is from 1993 being supported by the BDE standard drivers.

Like the original dBASE tables, each FoxPro data table core file has the file extension .DBF, and a FoxPro table created as DBE level 25 but non-indexed and without the Memo and OLE fields is actually a dBASE 4 table.

Max. length of field names is 10 all capitalized characters, no spaces allowed.

Later table versions of FoxPro (2.6) and Visual FoxPro 3 to 9 are not supported by the standard BDE FoxPro driver.
Visual FoxPro development ended in 2007 (VFP 9.0).

Later versions of FoxPro via ODBC

In later versions of FoxPro/Visual FoxPro the data table files (.dbf) are embraced with the database files .dbc (data table container) or actually a .dbf file with a .dbc extension containing information about the tables of the database - see also Associated table files.
These later versions of FoxPro/Visual FoxPro are not supported by the BDE except via specific ODBC connections as an interlayer between the BDE and the data.
If you do manage the BDE-ODBC connections even the PdxEditor will communicate with Visual FoxPro databases via BDE.

Old FoxPro "database" terminology

In old dBASE and FoxPro terminology each table was called a "database".

Version specifics

Field types

Version 2.5

Data contents

Size setting

Character

Text, any characters according to applied language driver.
Essentially a VARCHAR() field.

Max. 254 chars

Numeric

Integer or decimal numbers according to size specification.

Size: max. 20, decimals: max. (size - 2)

Memo

BLOB field.
Memo text, practically unlimited text length (MBytes).

Auto

Logical

TRUE/FALSE

Auto

Date

Short date as text format YYYYMMDD.
Display according to system settings.

Auto

Float

Functional identical to Numeric.

Size: max. 20, decimals: max. (size - 2)

OLE

BLOB field.
Object Linking and Embedding, i.e. links to external functional objects (used in customized applications).

Auto

dBASE/FoxPro numerics

Please see dBASE/FoxPro numerics.

Record deletions

As a common design for dBASE and FoxPro tables all versions, when deleting records they just applied a deletion marker and aren't actually removed from the table files until later packing the table.
Please see Table packing and security issues.

Compared to the dBASE format

Originating as a dBASE clone (xBase) the FoxPro table format originally was identical to the dBASE format.


FoxPro

dBASE

Field type

vers. 2.5

vers. III+

vers. IV

vers. 5

Character

+

+

+

+

Numeric

+

+

+

+

Date

+

+

+

+

Logical

+

+

+

+

Memo

+

+

+

+

Float

+

 

+

+

OLE

+

 

 

+

Binary

 

 

 

+

A FoxPro table using only the first four field types (Character, Numeric, Date, Logical) is interpreted by the BDE as a dBASE 4 table, whereas adding one of the Memo, Float or OLE types, the table will identify as a FoxPro table, even though the BDE sees the OLE field as a DBaseOle field.
Whatever types of fields used by the FoxPro table, it will propagate to a dBASE level 7 table if applied the Required attribute to any of the fields.

__________________________
PdxEditor Application Help, 21 May 2026; © 2010-2026 Niels Knabe