Schema Rowset Support in SQL Server Native Client (OLE DB)

Applies to: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Important

The SQL Server Native Client (often abbreviated SNAC) has been removed from SQL Server 2022 (16.x) and SQL Server Management Studio 19 (SSMS). Both the SQL Server Native Client OLE DB provider (SQLNCLI or SQLNCLI11) and the legacy Microsoft OLE DB Provider for SQL Server (SQLOLEDB) are not recommended for new development. Switch to the new Microsoft OLE DB Driver (MSOLEDBSQL) for SQL Server going forward.

The SQL Server Native Client OLE DB provider also supports returning schema information from a linked server when processing Transact-SQL distributed queries.

Note

Although SQL Server supports synonyms, metadata for synonyms is not returned by SQL Server Native Client.

The following tables list schema rowsets and the restriction columns supported by the SQL Server Native Client OLE DB provider.

Schema rowset Restriction columns
DBSCHEMA_CATALOGS CATALOG_NAME
DBSCHEMA_COLUMN_PRIVILEGES All the restrictions are supported.

TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME GRANTOR GRANTEE
DBSCHEMA_COLUMNS All the restrictions are supported.

TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME

The following additional columns are specific to SQL Server:

COLUMN_LCID, which is the locale ID of the collation. COLUMN_LCID is the same value as a Windows LCID.

COLUMN_COMPFLAGS defines which comparisons are supported for the collation. The data format is the same as DBPROB_FINDCOMPAREOPS.

COLUMN_SORTID, which is the SQL Server sorting style for the collation.

COLUMN_TDSCOLLATION, which is the SQL Server collation for the column.

IS_COMPUTED, which is VARIANT_TRUE if the column is a computed column and VARIANT_FALSE otherwise.
DBSCHEMA_FOREIGN_KEYS All restrictions are supported.

PK_TABLE_CATALOG PK_TABLE_SCHEMA PK_TABLE_NAME FK_TABLE_CATALOG FK_TABLE_SCHEMA FK_TABLE_NAME
DBSCHEMA_INDEXES Restrictions 1, 2, 3, and 5 are supported.

TABLE_CATALOG TABLE_SCHEMA INDEX_NAME TABLE_NAME
DBSCHEMA_PRIMARY_KEYS All restrictions are supported.

TABLE_CATALOG TABLE_SCHEMA TABLE_NAME
DBSCHEMA_PROCEDURE_PARAMETERS All restrictions are supported.

PROCEDURE_CATALOG PROCEDURE_SCHEMA PROCEDURE_NAME PARAMETER_NAME
DBSCHEMA_PROCEDURES Restrictions 1, 2, and 3 are supported.

PROCEDURE_CATALOG PROCEDURE_SCHEMA PROCEDURE_NAME

DBSCHEMA_PROCEDURES returns only procedures that can be executed by the current user, or for which the current user has been granted VIEW DEFINITION permission.
DBSCHEMA_PROVIDER_TYPES All restrictions are supported.

DATA_TYPE BEST_MATCH
DBSCHEMA_SCHEMATA All restrictions are supported.

CATALOG_NAME SCHEMA_NAME SCHEMA_OWNER
DBSCHEMA_STATISTICS All restrictions are supported.

TABLE_CATALOG TABLE_SCHEMA TABLE_NAME
DBSCHEMA_TABLE_CONSTRAINTS All restrictions are supported.

CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME TABLE_CATALOG TABLE_SCHEMA TABLE_NAME CONSTRAINT_TYPE
DBSCHEMA_TABLE_PRIVILEGES All restrictions are supported.

TABLE_CATALOG TABLE_SCHEMA TABLE_NAME GRANTOR GRANTEE
DBSCHEMA_TABLES All restrictions are supported.

TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE
DBSCHEMA_TABLES_INFO All restrictions are supported.

TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE

In This Section

Distributed Query Support in Schema Rowsets

LINKEDSERVERS Rowset (OLE DB)

See Also

SQL Server Native Client (OLE DB)
Using User-Defined Types