File Types
Btrieve API supports a maximum file size of 256 GB for PSQL 9.5 or later data files (128 GB for earlier 9.x versions and 64 GB for earlier versions), supports long file names, and supports three data file types:
*Note: For users of Btrieve 6.x and earlier, PSQL can create files in 8.x and 7.x formats. These newer formats allow for enhancements and new features.

Btrieve 6.x and earlier cannot open PSQL 7.x or 8.x files. However, PSQL v12 can open pre-7.0 files. When PSQL v12 opens pre-7.0 files, it does not convert the files to the 7.0 or 8.0 formats. Also, you can configure the PSQL to create files using a pre-8.0 format. This may be useful if you want to use newly created pre-V8 files.
Standard Data Files
A standard 7.x or later data file contains two FCR pages followed by a number of PAT pages, index pages, data pages, and possibly variable and ACS pages. You can create a standard file for use with either fixed- or variable-length records. Because standard files contain all the index structures and data records, The MicroKernel Engine can dynamically maintain all the index information for the records in the file.
Data-Only Files
When you create a data-only file, you do not specify any key information, and PSQL does not allocate index pages for the file. This results in a smaller initial file size than for standard files. You can add keys to a data-only file after creating the file.
Key-Only Files
Key-only files contain only FCR pages followed by a number of PAT pages and index pages. (In addition, if you have defined referential integrity constraints on the file, the file may contain one or more variable pages.)
Key-only files include only one key, and the entire record is stored with the key, so no data pages are required. Key-only files are useful when your records contain a single key and that key takes up most of each record. Another common use for a key-only file is as an external index for a standard data file.
The following restrictions apply to key-only files:
Large Files
The MicroKernel Engine supports file sizes up to 256 GB for PSQL 9.5 or later (128 GB for earlier 9.x versions and 64 GB for other earlier versions). However, many operating systems do not support single files this large. In order to support files larger than the operating system file size limit, the MicroKernel Engine breaks up large files into smaller files that the operating system can support. A large, logical file is called an extended file. The smaller, physical files that comprise an extended file are called extension files. The base file is an original data file that has become too large to support as a single, physical file. Non-extended (that is, non-segmented) files provide more efficient I/O and, therefore, increased performance.
You can choose to not to automatically extend PSQL 9.x files or later at 2 GB. To change the segment operation setting access the configuration settings in the PSQL Control Center (PCC) as described in Configuration Through PCC in Advanced Operations Guide. From there you can set the Limit Segment Size to 2 GB option.
If this option is unselected, PSQL 9.x files will not be segmented automatically at 2 GB. Version 8.x and earlier data files will continue to be extended when they reach 2 GB. If your files are already extended, they will remain segmented.
Regardless of the configuration setting, all files will continue to be extended based on the file size limitations of the current operating system.
For information about backing up files, including extended files, refer to Backing Up Your Files.
Long File Names
The MicroKernel Engine supports long file names whose length is less than or equal to 255 bytes. The following items must conform to this upper limit:
The file name can contain spaces unless the Embedded Spaces client configuration option is disabled. The default setting is On. See Advanced Operations Guide (Long File Names and Embedded Spaces Support).
When the MicroKernel Engine generates new files based on an existing file name, such as with Large Files or during Archival Logging or Continuous Operations (for more information, see Chapter 9, Logging, Backup, and Restore in Advanced Operations Guide), the new file name includes as much of the original file name as possible and an appropriate file extension, as in the following examples: