DICTIONARY.COLUMNS

The following table lists the columns that appear in the result table for the DICTIONARY.COLUMNS table.
Note: Null indicates either a null or a missing value.
Column Name
Column Number
Data Type
Description
TABLE_CAT
1
NVARCHAR1
Catalog name
TABLE_SCHEM
2
NVARCHAR
Schema name
Null is returned if the schema is not applicable to the data source. If a driver supports schemas for some tables but not for others, such as when the driver retrieves data from different DBMSs, it returns an empty string ("") for those tables that do not have schemas.
TABLE_NAME
3
NVARCHAR1
Table name
COLUMN_NAME
4
NVARCHAR1
Column name
The driver returns an empty string for a column that does not have a name.
DATA_TYPE
5
signed INTEGER1
TKTS data type.
This can be a SAS FedSQL data type or a remote table driver-specific data type. For datetime and interval data types, this column returns the concise data type such as DATE or INTERVAL_YEAR_TO_MONTH, rather than the nonconcise data type such as DATETIME or INTERVAL.
For information about driver-specific TKTS data types, see the remote table driver's documentation.
TYPE_NAME
6
NVARCHAR1
Data source-dependent common data type name, for example, CHAR, NVARCHAR, or BIGINT.
COLUMN_SIZE
7
signed BIGINT1
If DATA_TYPE is CHAR or VARCHAR, this column contains the maximum length of the column in characters. For datetime data types, this is the total number of characters required to display the value when it is converted to characters. For numeric data types, this is either the total number of digits or the total number of bits allowed in the column, according to the NUM_PREC_RADIX column. For interval data types, this is the number of characters in the character representation of the interval literal.
BUFFER_LENGTH
8
signed BIGINT1
The length in bytes of data transferred. For numeric data, this size might be different from the size of the data stored on the data source. This value might be different from COLUMN_SIZE column for character data.
DECIMAL_DIGITS
9
signed INTEGER
The total number of significant digits to the right of the decimal point.
If DATA_TYPE is TIME and TIMESTAMP, this column contains the number of digits in the fractional seconds component. For the other data types, this is the decimal digits of the column on the data source. For interval data types that contain a time component, this column contains the number of digits to the right of the decimal point (fractional seconds). For interval data types that do not contain a time component, this column is 0. Null is returned for data types where DECIMAL_DIGITS is not applicable.
NUM_PREC_RADIX
10
signed INTEGER
For numeric data types, either 10 or 2 is returned.
If the value returned is 10, the values in COLUMN_SIZE and DECIMAL_DIGITS contain the number of decimal digits allowed for the column. For example, a DECIMAL(12,5) column would return 10 for NUM_PREC_RADIX, 12 for COLUMN_SIZE, and 5 for DECIMAL_DIGITS; a FLOAT column could return 10 for NUM_PREC_RADIX, 15 for COLUMN_SIZE, and null for DECIMAL_DIGITS.
If the value returned is 2, the values in COLUMN_SIZE and DECIMAL_DIGITS give the number of bits allowed in the column. For example, a FLOAT column could return 2 for RADIX, 53 for COLUMN_SIZE, and null for DECIMAL_DIGITS.
Null is returned for data types where NUM_PREC_RADIX is not applicable.
NULLABLE
11
signed INTEGER not null
TKTS_NO_NULLS if the column will not accept null values.
TKTS _NULLABLE if the column accepts null values.
TKTS_NULLABLE_UNKNOWN if it is not known whether the column accepts null values.
The value returned for this column is different from the value returned for the IS_NULLABLE column. The NULLABLE column indicates with certainty that a column can accept null values, but cannot indicate with certainty that a column does not accept null values. The IS_NULLABLE column indicates with certainty that a column cannot accept null values, but cannot indicate with certainty that a column accepts null values.
REMARKS
12
NVARCHAR
A description of the column. For a FedSQL view, the value in the REMARKS column is FedSQL.VIEW.
COLUMN_DEF
13
NVARCHAR
The default value of the column. The value in this column should be interpreted as a string if it is enclosed in quotation marks.
If null was specified as the default value, then this column is the word NULL, not enclosed in quotation marks. If the default value cannot be represented without truncation, then this column contains TRUNCATED, not enclosed in quotation marks. If no default value is specified, then this column is null.
The value of COLUMN_DEF can be used in generating a new column definition, except when it contains the value TRUNCATED.
TKTS_DATA_TYPE
14
signed INTEGER1
Data type, as it appears in the TKTS_DESC_TYPE record field.
This can be a SAS FedSQL data type or a remote table driver-specific data type. This column is the same as the DATA_TYPE column, with the exception of datetime and interval data types. This column returns the nonconcise data type (such as DATETIME or INTERVAL), rather than the concise data type (such as DATE or YEAR_TO_MONTH) for datetime and interval data types. If this column returns DATETIME or INTERVAL, the specific data type can be determined from the TKTS_DATETIME_SUB column.
For information about driver-specific TKTS data types, see the remote table driver's documentation.
TKTS_DATETIME_SUB
15
signed INTEGER
The subtype code for datetime and interval data types.
For other data types, this column returns a null.
CHAR_OCTET_LENGTH
16
signed BIGINT
The maximum length in bytes of a character or binary data type column.
For all other data types, this column returns a null.
ORDINAL_POSITION
17
signed INTEGER1
The ordinal position of the column in the table. The first column in the table is number 1.
IS_NULLABLE
18
NVARCHAR1
NO if the column does not include nulls.
YES if the column could include nulls.
This column returns a zero-length string if nullability is unknown.
ISO rules are followed to determine nullability. An ISO SQL-compliant DBMS cannot return an empty string.
The value returned for this column is different from the value returned for the NULLABLE column.
1Value cannot be a null