Progress
SQL-89
Guide and Reference


Schema Tables for Tables and Columns

The SQL data definition statements that you specify in your procedures directly update the fields in the schema tables _File, _Field, _Index, and _Index Field. Table B–1 and Table B–2 list the information contained in the _File, and _Field schema tables. The _Index and _Index-Field schema tables primarily contain system information.

Table B–1 lists the fields in the _File schema table.

Table B–1: Fields in the _File Schema Table 
Field
Description
_File-Name
The table name, as specified in the CREATE TABLE statement. You cannot change this value.
_Can-Create
Initially set to the user ID of the user who first compiles and runs the CREATE TABLE statement for this table. You cannot remove or change this first user ID. You can modify the rest of the field using the GRANT and REVOKE statements.
_Can-Read
Initially set to the owner. You can modify this value using the GRANT and REVOKE statements.
_Can-Write
Initially set to * (all users). Write privilege (through the UPDATE statement) is checked at the column level. You cannot modify this value.
_Can-Delete
Initially set to the owner. You can modify this value using the GRANT and REVOKE statements.
_DB-Lang
Set to 0 for tables created using the Data Dictionary, and 1 for tables created with SQL. You cannot modify this value.

Table B–2 lists and describes the fields in the _Field schema table. The _Field table contains one record for each column in a table.

Table B–2: Fields in the _Field Schema Table
Field
Description
_Field-Name
The column name, as specified in the CREATE TABLE statement. You cannot change this value.
_Data-Type
The data type of the column, as specified in the CREATE TABLE statement. You cannot change this value.
_Label
The label used for the field. The default value is a question mark (?), which means that the _Field-Name is used as the label. You can modify this value using the ALTER TABLE statement.
_Decimals
Set to the number of digits to the right of the decimal point for columns declared as DECIMAL or NUMERIC in the CREATE TABLE statement. Also used for character columns to store the declared length of the column. This field is set to the maximum for the FLOAT and REAL data types.
_Order
Set to correspond to the order of the column in the CREATE TABLE statement. This indicates the default order, a left-to-right display of the columns in the table. The lowest number is the leftmost column and highest number is the rightmost. You cannot modify this value.
_Can-Read
Initialized to all users by the CREATE TABLE statement because the read privilege (through the SELECT statement) is checked at the table level. You cannot modify this value.
_Can-Write
Initialized to the owner in the CREATE TABLE statement. You can modify this value using the GRANT and REVOKE statements.
_Col-Label
The label for the field when column labels are used. This overrides the _Label value when column labels are in effect. Column labels that appear at the top of a column can contain exclamation points (!) to indicate line breaks. You can modify this value using the ALTER TABLE statement.
_Initial
Contains the default value, if there is one. You can modify this value using the ALTER TABLE statement.
_Fld-Case
Indicates whether the field is case sensitive. For tables created with the CREATE TABLE statement, the default is NO unless you use the ANSI SQL (-Q) startup parameter. You cannot change the field if the record is in an index. You can modify this value using the ALTER TABLE statement.
_Extent
Always set to 0 from the CREATE TABLE statement. Progress array fields can be referred to, but not created in, SQL statements.
_Format
Set through the CREATE TABLE or ALTER TABLE statement. If not set explicitly, an appropriate default is used, depending on the declared size of the column. You can modify this value using the ALTER TABLE statement.
_Mandatory
Set to YES for a column declared as NOT NULL in the CREATE TABLE statement. Otherwise, set to NO. You cannot modify this value.


Copyright © 2004 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095