ODBC4x
ProvideX Data Dictionary Table Definitions
  ProvideX Data Dictionary file definitions created in NOMADS are compatible with the ProvideX ODBC driver.

Data Dictionary Maintenance is a menu-driven utility in NOMADS that allows you to define files by entering pertinent information for each element (variable name, type, length, delimiter, etc…). From this information, ProvideX builds and maintains the Data Dictionary for your given database and creates corresponding entries in:

providex.ddf table definitions
providex.dde column definitions

As well, the data dictionary for each of your data source definitions is embedded in the corresponding physical database file. For more information on the ProvideX Data Dictionary, refer to the NOMADS Reference Manual.

The ProvideX ODBC driver reads the providex.ddf file to obtain a listing of tables/files from your Data Dictionary. As each data source defined in the providex.ddf file is accessed, the ProvideX ODBC driver reads its embedded data dictionary to determine the fields and the format of the data.

Any table defined in the providex.ddf file whose logical name begins with an asterisk * will not be made available to the user by the ODBC driver.

The ability to define non-normalized data files (i.e., files with multi-format records) is allowed in the Data Dictionary Maintenance; however, the ODBC driver will only recognize and use the first record format. To define non-normalized files, use an INI Definition.

   
Fields Used by the ODBC Driver The ProvideX ODBC driver uses the following fields from the Data Dictionary Maintenance > Element Description screen in NOMADS:
Name Column name as displayed. Must be unique within the table. Maximum length is 30 characters.
Class Optional field used to control the output type of the data. Maximum length is 30 characters. See Classes.
External Only Enable this flag to identify that the field exists as part of external key only.
Type and Format Mask Type and format mask elements combined. This describes both the output type (String or Number) and how the data will be formatted in the record. See Type-Format Mask Combinations below for the complete list of element combinations.
Length Precision, or maximum length, of the data field. The scale, or number of digits to the right of the decimal place, is optional. For Example:
6 Describes integer of 6 digits total.
6.2 . Describes numeric of 6 digits total, 2 are right of decimal point.

Maximum length is 6 digits total. Maximum precision is 999999. Maximum scale is 99

Occurs Dimensions of an array. If the value is a single number, such as 3, then it is considered to be a single element of an array rather than an entire array. If this field contains two values, colon separated, then the ODBC driver will generate multiple column names (column name + underscore + numeric index) for the elements in the array.

For example, if the field MyArray occurs 3 times (has 3 values). The ODBC driver will generate column names: MyArray_1, MyArray_2, MyArray_3 to represent the elements in the array.

   
Type-Format Mask Combinations The table below lists all of the Type and Format Mask element combinations used by the ODBC driver. The equivalent of the element combination for the INI definition appears in the column on the right.

Type -
Format Mask
Description INI Equivalent
String -
Delimited
Default. String of variable length up to the size defined by Length. Field delimiter terminates field. string, variable
String -
Fixed
Trailing spaces are stripped during read.If the field is the last segment of an external key then it will not be padded with spaces during insert/update. Non-external key fields are padded with spaces during insert/update. Field has no field delimiter. string, fixed
String -
Padded
Always padded with spaces during insert/update. Fields are not stripped of trailing spaces during read. Field has no field delimiter. string, nostrip
String -
Substring
Always padded with spaces during insert/update. Fields are not stripped of trailing spaces during read. Field has no field delimiter. string, substring
String -
Last Substring
Always padded with spaces during insert/update. Fields are not stripped of trailing spaces during read. Field delimiter terminates field. string, padded
Number -
Delimited
Number of variable length up to the size defined by Length. Field delimiter terminates field. numeric, variable
Number -
Fixed
Sub-stringed field. Field has an implied decimal point if scale is provided. Field has no field delimiter. numeric, fixed
Number -
Padded
Sub-stringed field. Field has an implied decimal point if scale is provided. Field has no field delimiter. numeric, nostrip
Number -
Substring
Sub-stringed field. Field has no field delimiter. numeric, substring
Number -
Last Substring
Sub-stringed field. Field delimiter terminates field. numeric, padded
Number -
Binary Numeric
Sub-stringed field. Field has no field delimiter. numeric, binary
Number -
Decimal
Sub-stringed field which is number with an embedded decimal. Field has no field delimiter. numeric, decimal
Number -
Decimal Delimited
Sub-stringed field which is number with an embedded decimal. Field delimiter terminates field. numeric, delimited
Number -
Sign Fixed Numeric
Sub-stringed field. Field has no field delimiter. numeric, signed
Number -
Unsigned Integer
Sub-stringed field. Field has no field delimiter. uni