Verwenden von Katalogfunktionen
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Wichtig
SQL Server Native Client (SNAC) wird nicht ausgeliefert mit:
- SQL Server 2022 (16.x) und höhere Versionen
- SQL Server Management Studio 19 und spätere Versionen
Der SQL Server Native Client (SQLNCLI oder SQLNCLI11) und der Microsoft OLE DB-Legacyanbieter für SQL Server (SQLOLEDB) werden für neue Anwendungsentwicklungen nicht empfohlen.
Für neue Projekte verwenden Sie einen der folgenden Treiber:
Informationen zu SQLNCLI, das als Komponente der SQL Server-Datenbank-Engine (Versionen 2012 bis 2019) verfügbar ist, finden Sie in dieser Ausnahme für den Supportlebenszyklus.
Alle Datenbanken verfügen über eine Struktur, die die in der Datenbank gespeicherten Daten enthält. Eine Definition dieser Struktur ist zusammen mit anderen Informationen, wie beispielsweise Berechtigungen, in einem Katalog gespeichert, der als Satz Systemtabellen implementiert und auch als Datenwörterbuch bezeichnet wird.
Der ODBC-Treiber für SQL Server Native Client ermöglicht es einer Anwendung, die Datenbankstruktur über Aufrufe von ODBC-Katalogfunktionen zu ermitteln. Katalogfunktionen geben Informationen in Resultsets zurück und werden mithilfe von gespeicherten Katalogprozeduren implementiert, um die Systemtabellen im Katalog abzufragen. Beispielsweise könnte eine Anwendung ein Resultset mit Informationen über alle Tabellen im System oder alle Spalten in einer bestimmten Tabelle anfordern. Die standardmäßigen ODBC-Katalogfunktionen werden verwendet, um Kataloginformationen vom SQL Server abzurufen, mit dem die Anwendung verbunden ist.
SQL Server unterstützt verteilte Abfragen, in denen auf Daten aus mehreren heterogenen OLE DB-Datenquellen in einer einzigen Abfrage zugegriffen wird. Eine Methode des Zugriffs auf eine OLE DB-Datenquelle ist die Definition der Datenquelle als Verbindungsserver. Dies kann mithilfe von sp_addlinkedserver erfolgen. Nachdem der Verbindungsserver definiert wurde, kann in Transact-SQL-Anweisungen auf Objekte dieses Servers verwiesen werden. Dazu wird ein vierteiliger Name verwendet:
linked_server_name.catalog.schema.object_name.
Der ODBC-Treiber für SQL Server Native Client unterstützt zwei treiberspezifische Funktionen, mit denen Kataloginformationen von verknüpften Servern abgerufen werden können:
SQLLinkedServers
Gibt eine Liste der auf den lokalen Servern definierten Verbindungsserver zurück.
SQLLinkedCatalogs
Gibt eine Liste der in einem Verbindungsserver enthaltenen Kataloge zurück.
Nachdem Sie über einen verknüpften Servernamen und einen Katalognamen verfügen, unterstützt der SQL Server Native Client ODBC-Treiber das Abrufen von Informationen aus dem Katalog mithilfe eines zweiteiligen Namens von linked_server_name.Katalog für CatalogName in den folgenden ODBC-Katalogfunktionen:
SQLColumnPrivileges
SQLColumns
SQLPrimaryKeys
SQLStatistics
SQLTablePrivileges
SQLTables
Die zweiteilige linked_server_name.Der Katalog wird auch für FKCatalogName und PKCatalogName für SQLForeignKeys unterstützt.
Zur Verwendung von SQLLinkedServers und SQLLinkedCatalogs sind die folgenden Dateien erforderlich:
sqlncli.h
Enthält Funktionsprototypen und Konstantendefinitionen für die Verbindungsserverkatalogfunktionen. sqlncli.h muss in der ODBC-Anwendung enthalten sein und im Includepfad angegeben werden, wenn die Anwendung kompiliert wird.
sqlncli11.lib
Muss im Bibliothekspfad des Linkers enthalten sein und als zu verknüpfende Datei angegeben werden. sqlncli11.lib wird mit dem SQL Server Native Client ODBC-Treiber verteilt.
sqlncli11.dll
Muss zur Ausführungszeit verfügbar sein. sqlncli11.dll wird mit dem SQL Server Native Client ODBC-Treiber verteilt.
Weitere Informationen
SQL Server Native Client (ODBC)
SQLColumnPrivileges
SQLColumns
SQLPrimaryKeys
SQLTablePrivileges
SQLTables
SQLStatistics