Returns the size in bytes of a specified field or file.
FSIZE(cFieldName [, nWorkArea | cTableAlias] | cFileName) |
Parameters
- cFieldName
-
Specifies the name of the field.
- nWorkArea
-
Specifies the work area of the table for which FSIZE( ) returns a field size.
FSIZE( ) returns 0 if a table isn't open in the work area you specify.
- cTableAlias
-
Specifies the alias of the table for which FSIZE( ) returns a field size.
Visual FoxPro generates an error message if you specify a table alias that doesn't exist.
- cFileName
-
Specifies a file for which FSIZE( ) returns the size in bytes.
Return Value
Numeric
Remarks
The current setting of SET COMPATIBLE determines if FSIZE( ) returns the size of a field or a file. If SET COMPATIBLE is set to OFF or FOXPLUS (the default), FSIZE( ) returns the size of a field. If SET COMPATIBLE is set to ON or DB4, FSIZE( ) returns the size of a file.
The following table shows the default size (in bytes) for each fixed-length field type.
| Field type | Default field size(in bytes) |
|---|---|
|
Currency |
8 |
|
Date |
8 |
|
DateTime |
8 |
|
Double |
8 |
|
Integer |
4 |
|
Logical |
1 |
|
Memo |
4 |
|
General |
4 |
The size of a field can be displayed with DISPLAY STRUCTURE and LIST STRUCTURE.
If you omit the optional nWorkArea and cTableAlias arguments, FSIZE( ) returns the field size for a field in the current table and work area.
Example
The following example uses FSIZE( ) to return the size of two fields in the customer table.
Copy Code | |
|---|---|
SET COMPATIBLE OFF
CLOSE DATABASES
OPEN DATABASE (HOME(2) + 'Data\testdata')
USE customer && Open Customer table
CLEAR
? FSIZE('contact') && Displays 30
? FSIZE('cust_id') && Displays 6 | |
Microsoft Visual FoxPro 9 SP2 Help file, VFPX Edition v1.08