3.1.4.2.2.1.3.59.1 Columns

The DISCOVER_STORAGE_TABLE_COLUMNS rowset contains the following columns.

Name

Type

Restriction

Description

DATABASE_NAME

xsd:string

Yes<327>

The name of the database.

CUBE_NAME

xsd:string

Yes<328>

The name of the cube.

MEASURE_GROUP_NAME

xsd:string

Yes<329>

The name of the measure group.

DIMENSION_NAME

xsd:string

The name of the dimension.

ATTRIBUTE_NAME

xsd:string

The name of the attribute.

TABLE_ID

xsd:string

The ID of the table.

COLUMN_ID

xsd:string

The ID of the column.

COLUMN_TYPE

xsd:string

The type of the column. The values are as follows:

  • BASIC_DATA – This column contains data provided by an external data source.

  • CALCULATED_DATA – This column contains data created by calculations.

  • RELATIONSHIP – This column contains information about relationship between tables.

  • HIERARCHY_POSITION_TO_DATAID – This column contains information mapping position of a value in the hierarchy to the Data ID.

  • HIERARCHY_DATAID_TO_POSITION – This column contains information mapping a Data ID to the position of a value in the hierarchy.

  • UNKNOWN – The column type is not known.

COLUMN_ENCODING

xsd:long

The encoding method used on the column. The method can be one of the following:

  • 0 – The system automatically selects a column encoding.

  • 1 – The column uses hash encoding.

  • 2 – The column uses value encoding.

DATATYPE

xsd:string

Yes<330>

The type of the column data. The values are as follows:

  • N/A – Indicates that no data type information is available.

  • DBTYPE_EMPTY - Indicates that no value was specified.

  • DBTYPE_I2 - Indicates a two-byte signed integer.

  • DBTYPE_I4 - Indicates a four-byte signed integer.

  • DBTYPE_R4 - Indicates a single-precision floating-point value.

  • DBTYPE_R8 - Indicates a double-precision floating-point value.

  • DBTYPE_CY - Indicates a currency value. Currency is a fixed-point number that has four digits to the right of the decimal point and that is stored in an eight-byte signed integer scaled by 10,000.

  • DBTYPE_DATE - Indicates a date value. Date values are stored as Double, the whole part of which is the number of days since December 30, 1899, and the fractional part of which is the fraction of a day.

  • DBTYPE_BSTR - Indicates a null-terminated character string (Unicode).

  • DBTYPE_ERROR - Indicates a 32-bit error code.

  • DBTYPE_BOOL - Indicates a Boolean value.

  • DBTYPE_DECIMAL - Indicates an exact numeric value with a fixed precision and scale. The scale is between 0 and 28.

  • DBTYPE_I1 - Indicates a one-byte signed integer.

  • DBTYPE_UI1 - Indicates a one-byte unsigned integer.

  • DBTYPE_UI2 - Indicates a two-byte unsigned integer.

  • DBTYPE_UI4 - Indicates a four-byte unsigned integer.

  • DBTYPE_I8 - Indicates an eight-byte signed integer.

  • DBTYPE_UI8 - Indicates an eight-byte unsigned integer.

  • DBTYPE_GUID - Indicates a GUID.

  • DBTYPE_BYTES - Indicates a binary value.

  • DBTYPE_STR - Indicates a string value.

  • DBTYPE_WSTR - Indicates a null-terminated Unicode character string.

  • DBTYPE_NUMERIC - Indicates an exact numeric value with a fixed precision and scale. The scale is between 0 and 38.

  • DBTYPE_DBDATE - Indicates a date value (yyyymmdd).

  • DBTYPE_DBTIME - Indicates a time value (hhmmss).

  • DBTYPE_DBTIMESTAMP - Indicates a date-time stamp (yyyymmddhhmmss plus a fraction in billionths).

ISKEY

xsd:boolean

Indicates whether the column is a key column.

ISUNIQUE

xsd:boolean

Indicates whether the column contains unique values.

ISNULLABLE

xsd:boolean

Indicates whether the column can contain NULL values.

ISROWNUMBER

xsd:boolean

Indicates whether the column is a Row Number column.

DICTIONARY_SIZE<331>

xsd:long

Indicates the amount of memory that is used by the dictionary data structure associated with the column, in bytes. The dictionary data structure maps column data IDs to the actual values.

DICTIONARY_ISPAGEABLE<332>

xsd:boolean

Indicates the Vertipaq Data Paging (VDP) state of the dictionary, which specifies whether the dictionary is pageable. If the VDP state of the dictionary is unknown, the default value is NULL. Otherwise, the value is a Boolean.

DICTIONARY_ISRESIDENT<333>

xsd:boolean

Indicates the VDP state of the dictionary, which specifies whether the dictionary is resident. If the VDP state of the dictionary is unknown, the default value is NULL. Otherwise, the value is a Boolean.

DICTIONARY_TEMPERATURE<334>

xsd:double

Indicates the scaled numeric value of the frequency of dictionary access. The value is based on the most recent access time and usage. This column has a numeric value only if the dictionary is pageable and has been loaded at least once; otherwise, the value is NULL.

DICTIONARY_LAST_ACCESSED<335>

xsd:datetime

Indicates the most recent time the dictionary was accessed. 

  • For non-pageable tables in the dictionary, the DICTIONARY_LAST_ACCESSED  value is NULL.

  • For pageable tables in the dictionary, DICTIONARY_LAST_ACCESSED value NULL denotes the table has not been loaded since server startup.

The rowset is not sorted.

The response has the following definition.

       <xsd:element name="root">
         <xsd:complexType>
           <xsd:sequence minOccurs="0" maxOccurs="unbounded">
             <xsd:element name="row" type="row" />
           </xsd:sequence>
         </xsd:complexType>
       </xsd:element>
       <xsd:complexType name="row">
         <xsd:sequence>
           <xsd:element sql:field="DATABASE_NAME" name="DATABASE_NAME" type="xsd:string" 
                        minOccurs="0" />
           <xsd:element sql:field="CUBE_NAME" name="CUBE_NAME" type="xsd:string" 
                        minOccurs="0" />
           <xsd:element sql:field="MEASURE_GROUP_NAME" name="MEASURE_GROUP_NAME" 
                        type="xsd:string" minOccurs="0" />
           <xsd:element sql:field="DIMENSION_NAME" name="DIMENSION_NAME" type="xsd:string" 
                        minOccurs="0" />
           <xsd:element sql:field="ATTRIBUTE_NAME" name="ATTRIBUTE_NAME" type="xsd:string" 
                        minOccurs="0" />
           <xsd:element sql:field="TABLE_ID" name="TABLE_ID" type="xsd:string" 
                        minOccurs="0" />
           <xsd:element sql:field="COLUMN_ID" name="COLUMN_ID" type="xsd:string" 
                        minOccurs="0" />
           <xsd:element sql:field="COLUMN_TYPE" name="COLUMN_TYPE" type="xsd:string" 
                        minOccurs="0" />
           <xsd:element sql:field="COLUMN_ENCODING" name="COLUMN_ENCODING" type="xsd:long" 
                        minOccurs="0" />
           <xsd:element sql:field="DATATYPE" name="DATATYPE" type="xsd:string" 
                        minOccurs="0" />
           <xsd:element sql:field="ISKEY" name="ISKEY" type="xsd:boolean" minOccurs="0" />
           <xsd:element sql:field="ISUNIQUE" name="ISUNIQUE" type="xsd:boolean" 
                        minOccurs="0" />
           <xsd:element sql:field="ISNULLABLE" name="ISNULLABLE" type="xsd:boolean" 
                        minOccurs="0" />
           <xsd:element sql:field="ISROWNUMBER" name="ISROWNUMBER" type="xsd:boolean" 
                        minOccurs="0" />
           <xsd:element sql:field="DICTIONARY_SIZE" name="DICTIONARY_SIZE" type="xsd:long" 
                        minOccurs="0" />
           <xsd:element sql:field="DICTIONARY_ISPAGEABLE" name="DICTIONARY_ISPAGEABLE" 
                        type="xsd:boolean" minOccurs="0" />
           <xsd:element sql:field="DICTIONARY_ISRESIDENT" name="DICTIONARY_ISRESIDENT" 
                        type="xsd:boolean" minOccurs="0" />
           <xsd:element sql:field="DICTIONARY_TEMPERATURE" name="DICTIONARY_TEMPERATURE" 
                        type="xsd:double" minOccurs="0" />
           <xsd:element sql:field="DICTIONARY_LAST_ACCESSED" name="DICTIONARY_LAST_ACCESSED" 
                        type="xsd:datetime" minOccurs="0" />
         </xsd:sequence>
       </xsd:complexType>