dBASE Files and Compatibles
Previous Topic  Next Topic 

Stat/Transfer will read and write dBASE III+ and IV files, and those from compatible systems such as Clipper or Alpha Four.  Obsolete dBASE II files can also be read.


Standard extension:  dbf



Reading dBASE Files

All versions of dBASE files can have indices for key fields, which are stored in separate files.  Stat/Transfer ignores these indices, and treats all files sequentially.


On input, dBASE numeric data and character variables are converted in a straightforward manner.  Logical variables are converted to numbers ('True' becomes '1', 'False' becomes '0').  Memo Fields cannot be converted and will not appear on the Variable Selection dialog box.  Deleted records are not transferred.



Writing dBASE Files

Users should be aware that dBASE files are limited to 128 variables.


dBASE stores numeric data in fixed length character format.  It is thus not very suitable for numbers which vary widely in magnitude, or which are either very large or very small.


When Stat/Transfer is transferring data from a system in which the width and number of decimal places are known, it uses that information to set the format of each field in the output dBASE files.  For systems, such as SYSTAT, in which this information is not recorded in the file, Stat/Transfer sets the formats based on the target type of the variable.



Missing Data

dBASE does not directly support missing values.  On input to Stat/Transfer, blanks in an dBASE file are interpreted as missing values.  If a data set is being transferred to an dBASE file format, missing values in the input files are set to blank in the dBASE file.  Blanks are interpreted as zero by dBASE.  Many other programs, including Stat/Transfer, interpret these blanks as missing.



Output Variable Types

The output variable type that results from each target variable type is given in the following table:




Target Type

Output Type


byte

Number (width 4; 0 decimal places)


int

Number (width 6; 0 decimal places)


long

Number (width 11; 0 decimal places)


dBASE III

float

double


Number (width 16; decimal places taken from input data. If unknown, set to 4)


dBASE IV

float

double


Float (width 16)


string

Character


date

Date


time

date/time

Character (written using ASCII format

options currently in effect)