The PROVIDER_TYPES
schema rowset returns metadata that indicates which data types are
returned by the provider. Each row in the PROVIDER_TYPES schema rowset
corresponds to one data type.
The SAS
providers return two data types (numeric data and character data),
which means that the PROVIDER_TYPES schema rowset contains only two
rows. Numeric data is returned as a DBTYPE_R8 type indicator. Character
data is returned as a DBTYPE_STR type indicator.
The following
table lists the 16 columns (of the 20 columns in the OLE DB specification)
that contain data.
Standard Mapping
|
|
|
|
|
|
Data type name.
Value is either num or char.
|
|
|
|
The DBTYPE value
that corresponds to the current data type (numeric or character).
|
|
|
|
For numeric data,
the maximum precision of the data type. For character data, the maximum
length of the column in characters.
|
|
|
|
Character used
to prefix a literal of the data type in a text command.
|
|
|
|
Character used
to create a suffix for a literal of the data type in a text command.
|
|
|
|
VARIANT_TRUE
if the data type can be set to NULL; VARIANT_FALSE if the data type
cannot be set to NULL.
|
|
|
|
VARIANT_TRUE
if the data type is character data and also case-sensitive. VARIANT_FALSE
if the data type is not character data or is not case sensitive.
|
|
|
|
Indicates whether
the data type is searchable. Value is DB_SEARCHABLE if the provider
supports ICommandText and the data type can be used with any relative
operator in a WHERE clause. Value is NULL if the provider does not
support ICommandText.
|
|
|
|
Indicates whether
the data type is signed or not. Value is VARIANT_TRUE when the data
type is signed; value is VARIANT_FALSE when the data type is not signed.
Value is NULL if the signed or unsigned status is not applicable to
the data type.
|
|
|
|
VARIANT_TRUE
if precision and scale are fixed for the data type; VARIANT_FALSE
if there is not a fixed precision and scale for the data type.
|
|
|
|
VARIANT_TRUE
if values of the data type can automatically increment; otherwise,
VARIANT_FALSE.
|
|
|
|
The global unique
identifier (GUID) for the data type.
|
|
|
|
The type library
for the data type.
|
|
|
|
VARIANT_TRUE
if this type is a BLOB that contains very long data; otherwise, VARIANT_FALSE.
|
|
|
|
VARIANT_TRUE
if this data type is the best match between the OLE DB data type indicated
by the value in the DATA_TYPE column and all types in the data source.
VARIANT_FALSE if this data type is not the best match.
|
|
|
|
VARIANT_TRUE
if all data of this type has the same length; otherwise, VARIANT_FALSE.
|
|