Použití funkcí katalogu

platí pro:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytický platformní systém (PDW)

Important

SQL Server Native Client (SNAC) není dodáván s:

  • SQL Server 2022 (16.x) a novější verze
  • SQL Server Management Studio 19 a novější verze

Pro vývoj nových aplikací se nedoporučuje nativní klient SQL Serveru (SQLNCLI nebo SQLNCLI11) a starší zprostředkovatel Microsoft OLE DB pro SQL Server (SQLOLEDB).

Pro nové projekty použijte jeden z následujících ovladačů:

Informace o SQLNCLI, které se dodává jako součást databázového stroje SQL Serveru (verze 2012 až 2019), naleznete v tomto support lifecycle exception.

Všechny databáze mají strukturu obsahující data uložená v databázi. Definice této struktury spolu s dalšími informacemi, jako jsou oprávnění, je uložena v katalogu (implementovaném jako sada systémových tabulek), známém také jako datový slovník.

Nativní klientský ODBC ovladač SQL Server umožňuje aplikaci určit strukturu databáze pomocí volání funkcí katalogu ODBC. Katalogové funkce vracejí informace v sadách výsledků a jsou implementovány pomocí uložených procedur v katalogu pro dotazování systémových tabulek v katalogu. Aplikace může například požádat o sadu výsledků obsahující informace o všech tabulkách v systému nebo o všech sloupcích v konkrétní tabulce. Standardní funkce katalogu ODBC se používají k získání informací o katalogu ze SQL Server, ke kterému byla aplikace připojena.

SQL Server podporuje distribuované dotazy, ve kterých jsou data z více heterogenních zdrojů OLE DB přístupná v jednom dotazu. Jednou z metod přístupu k vzdálenému zdroji dat OLE DB je definovat zdroj dat jako propojený server. To lze provést pomocí sp_addlinkedserver. Po definování propojeného serveru lze objekty v tomto serveru odkazovat v Transact-SQL příkazech pomocí čtyřdílného názvu:

linked_server_name.catalog.schema.object_name.

Nativní klientský ODBC ovladač SQL Server podporuje dvě specifické funkce ovladače, které pomáhají získávat katalogové informace z propojených serverů:

  • SQLLinkedServers

    Vrací seznam propojených serverů definovaných pro lokální server.

  • SQLLinkedCatalogs

    Vrátí seznam katalogů obsažených na propojeném serveru.

Poté, co máte propojený název serveru a katalog, ovladač SQL Server Native Client ODBC podporuje získávání informací z katalogu pomocí dvoudílného názvu linked_server_name.katalog pro CatalogName na následujících funkcích katalogu ODBC:

  • SQLColumnPrivileges

  • Sqlcolumns

  • SQLPrimaryKeys

  • SQLStatistics

  • SQLTablePrivileges

  • Sqltables

Dvoudílný linked_server_name.katalog je také podporován pro FKCatalogName a PKCatalogName na SQLForeignKeys.

Používání SQLLinkedServers a SQLLinkedCatalogs vyžaduje následující soubory:

  • sqlncli.h

    Zahrnuje prototypy funkcí a konstantní definice pro propojené serverové katalogové funkce. sqlncli.h musí být zahrnut v aplikaci ODBC a musí být v cestě k zahrnutí při kompilaci aplikace.

  • sqlncli11.lib

    Musí být v knihovní cestě linkeru a specifikován jako soubor, který má být propojen. sqlncli11.lib je distribuován s ovladačem SQL Server Native Client ODBC.

  • sqlncli11.dll

    Musí být přítomen při provedení. sqlncli11.dll je distribuován s ovladačem SQL Server Native Client ODBC.