Visual FoxPro System Capacities

Some capacities may be limited by available memory.

Category Feature Capacity

Table and Index Files

  Maximum # of records per table file 1 billion
  Maximum size of a table file 2 gigabytes
  Maximum size of an FPT file 2 gigabytes
  Maximum # of characters per record 65,500
  Maximum # of fields per record1 255
  Maximum # of tables open at one time2 65,535
  Maximum # of characters per table field 254
  Maximum # of bytes per index key in a non-compact index3 100
  Maximum # of bytes per index key in a compact index3 240
  Maximum # of open index files per table2 Unlimited
  Maximum # of open indexes in all work areas2 Unlimited
  Maximum # of relations Unlimited
  Maximum length of relational expressions Unlimited

Field Characteristics

  Maximum size of character fields 254
  Maximum size of numeric and float fields 20
  Maximum number of characters in field names in a free table 10
  Maximum number of characters in field names for a table contained in a database 128
  Minimum value of an integer -2,147,483,647
  Maximum value of an integer 2,147,483,647
  Digits of precision in numeric computations. Visual FoxPro can handle numbers up to 9007199254740992 (2^53) in exact computations. 16
  Miscellaenous:
64 bits = 8 bytes
Largest number = 10 ^ 308 = 2 ^ 1023
-> 10 bits per exponent + 1 for exponent sign plus 1 for number sign => 12 bits
Leaving 52 bits for the mantissa + 1 for implied normalized bit -> 53 bits

LOG10(2^53) = 15.95 decimal digits accuracy

 

Variables and Arrays

  Default # of variables 1,024
  Maximum # of variables 65,000
  Maximum # of arrays 65,000
  Maximum # of elements per array 65,000

Program and Procedure Files

  Maximum # of lines in source program files Unlimited
  Maximum size of compiled program
modules4
64K
  Maximum # of procedures per file Unlimited
  Maximum # of nested DO calls 128
  Maximum # of READ nesting levels 5
  Maximum # of nested structured programming commands 384
  Maximum # of passed parameters 26
  Maximum # of transactions 5

Report Designer Capacities

  Maximum # of objects in a report definition2 Unlimited
  Maximum length of a report definition 20 inches
  Maximum # of grouping levels 128
  Maximum length of character report variables 255

Other Capacities

  Maximum # of open windows (all types)2 Unlimited
  Maximum # of open Browse windows 255
  Maximum # of characters per character string or memory variable 16,777,184
  Maximum # of characters per command line 8,192
  Maximum # of characters per label control on a report 252
  Maximum # of characters per macro substituted line 8,192
  Maximum # of open files System limit
  Maximum keystrokes in keyboard macro 1,024
  Maximum fields that can be selected by a SQL SELECT statement 255
  Maximum length of a string literal 255
  Maximum # of pages in a report at runtime 32767

1 If one or more fields allow null values, the limit is reduced by one to 254 fields.
2 Limited by memory and available file handles. .cdx files use only one file handle.
3 If the collating sequence is set to MACHINE, each character uses one byte. If the collating sequence is not set to MACHINE, each character uses two bytes. If the indexed field supports null values, one additional byte is used in the index key. Note that non-machine indexes are always compact.
4 A program module is one procedure. A program or application can contain an unlimited number of program modules.

See Also

Table File Structure (.dbc, .dbf, .frx, .lbx, .mnx, .pjx, .scx, .vcx) | Setting Up an ODBC Data Source | Display System Information | Optimizing Your System | File Extensions and File Types | Optimizing Visual FoxPro Startup Speed | Special Terms for Configuration Files