Schema Rowset Classes and Typedef Classes

 

The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

The latest version of this topic can be found at Schema Rowset Classes and Typedef Classes.

A schema is a collection of database objects that are owned, or have been created by, a particular user. A catalog can contain one or more schemas, but must always contain a schema called INFORMATION_SCHEMA, which contains the views and domains of the information schema. Schema information in OLE DB is retrieved using predefined schema rowsets, and includes types, tables, columns, indexes, views, assertions and constraints, statistics, character sets, collations, and domains.

Schema rowsets are predefined rowsets representing metadata. Schema rowsets are generally used in dynamic programming, where the database structure is not known at compile time. You can use these schema rowsets to obtain information about a database at run time.

Use the typedef classes to instantiate the schema rowsets. The corresponding typedef and schema rowset classes are listed below. You must call CRestrictions::Open after you have created an instance of the schema rowset. This method returns a result set based on the restrictions you specify. See IDBSchemaRowset for information on restriction columns associated with each schema rowset.

The following table displays each OLE DB Schema Rowset and its corresponding OLE DB Templates typedef class and info class.

OLE DB Schema RowsetTypedef classInfo class
ASSERTIONSCAssertionsCAssertionInfo
CATALOGSCCatalogsCCatalogInfo
CHARACTER_SETSCCharacterSetsCCharacterSetInfo
COLLATIONSCCollationsCCollationInfo
COLUMN_PRIVILEGESCColumnPrivilegesCColumnPrivilegeInfo
COLUMNSCColumnsCColumnsInfo
CONSTRAINT_COLUMN_USAGECConstraintColumnUsageCConstraintColumnUsageInfo
CONSTRAINT_TABLE_USAGECConstraintTableUsageCConstraintTableUsageInfo
CHECK_CONSTRAINTSCCheckConstraintsCCheckConstraintInfo
COLUMN_DOMAIN_USAGECColumnDomainUsageCColumnDomainUsageInfo
FOREIGN_KEYSCForeignKeysCForeignKeysInfo
INDEXESCIndexesCIndexInfo
KEY_COLUMN_USAGECKeyColumnUsageCKeyColumnUsageInfo
PRIMARY_KEYSCPrimaryKeysCPrimaryKeyInfo
PROCEDURESCProceduresCProcedureInfo
PROCEDURE_COLUMNSCProcedureColumnsCProcedureColumnInfo
PROCEDURE_PARAMETERSCProcedureParametersCProcedureParameterInfo
PROVIDER_TYPESCProviderTypesCProviderInfo
REFERENTIAL_CONSTRAINTSCReferentialConstraintsCReferentialConstraintInfo
SCHEMATACSchemataCSchemataInfo
SQL_LANGUAGESCSQLLanguagesCSQLLanguageInfo
STATISTICSCStatisticsCStatisticInfo
TABLE_CONSTRAINTSCTableConstraintsCTableConstraintInfo
TABLESCTablesCTableInfo
TABLE_PRIVILEGESCTablePrivilegesCTablePrivilegeInfo
TRANSLATIONSCTranslationsCTranslationInfo
USAGE_PRIVILEGESCUsagePrivilegesCUsagePrivilegeInfo
VIEW_COLUMN_USAGECViewColumnUsageCViewColumnInfo
VIEWSCViewsCViewInfo
VIEW_TABLE_USAGECViewTableUsageCViewTableInfo

Header: atldbsch.h

CRestrictions Class

Show: