Contents SAS IOM Data Provider Previous Next

TABLES Schema Rowset Extensions

SAS OLE DB providers extend the OLE DB TABLES schema rowset to include metadata that is particular to SAS data sets. These custom schema rowset columns include the same information that is returned by the ISASDataSetInfo interface.  While that interface returns SAS metadata on a per data set basis and is limited to OLE DB clients, these customizations to the TABLES schema rowset include all tables (or data sets) in a data source at once and are available to both OLE DB and ADO clients.

The following table lists the columns that are added to the TABLES schema rowset.  The columns are returned after the columns that are described in the OLE DB specification and in the following order:

Column NameType IndicatorDescription
LOGICAL_RECORD_COUNTDBTYPE_I4The logical number of records in the data set.  The value of this column is the number of records you would encounter if you positioned at the beginning of the table and read sequentially until you encountered "end of file." This column corresponds to the lLogicalRecordCount member of the SASDATASETINFO structure that is returned by ISASDataSetInfo::GetDataSetInfo.
PHYSICAL_RECORD_COUNTDBTYPE_I4The phsyical number of records that are in the data set. The value of this column indicates the number of slots physically allocated for records in the data set.  This may be greater than the number of logical records.  This column corresponds to the lPhysicalRecordCount member of the SASDATASETINFO structure returned by ISASDataSetInfo::GetDataSetInfo.
RECORD_LENGTHDBTYPE_I4The number of bytes that are required to physically store a row of data in the data set. The record length multiplied by the phsycial record count indicates the magnitude of the data set that is on disk but not the specific size. This column corresponds to the lRecordLength member of the SASDATASETINFO structure returned by ISASDataSetInfo::GetDataSetInfo.
COMPRESSEDDBTYPE_WSTRThe name of the compression algorithm used. "NO" if none is set. This column corresponds to the pwszCompressionRoutine member of the SASDATASETINFO structure returned by ISASDataSetInfo::GetDataSetInfo.
INDEXEDDBTYPE_BOOLThis column is set to VARIANT_TRUE when an index exists on the data set; it is VARIANT_FALSE otherwise. This column corresponds to the fIsIndexed member of the SASDATASETINFO structure that is returned by ISASDataSetInfo::GetDataSetInfo.

Note that data set label that is returned by ISASDataSetInfo::GetDataSetInfo() in the pwszLabel member of the SASDATASETINFO structure is not represented by one of the custom columns.  The data set label is returned in the standard DESCRIPTION column.

Contents SAS IOM Data Provider Previous Next