Uso delle funzioni catalogo
Si applica a: SQL Server Database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics Piattaforma di strumenti analitici (PDW)
Importante
SQL Server Native Client (SNAC) non viene fornito con:
- SQL Server 2022 (16.x) e versioni successive
- SQL Server Management Studio 19 e versioni successive
SQL Server Native Client (SQLNCLI o SQLNCLI11) e il provider OLE DB Microsoft legacy per SQL Server (SQLOLEDB) non sono consigliati per lo sviluppo di nuove applicazioni.
Per i nuovi progetti, usare uno dei driver seguenti:
Per SQLNCLI fornito come componente del motore di database di SQL Server (versioni dal 2012 al 2019), vedere questa Eccezione relativa al ciclo di vita del supporto.
Tutti i database presentano una struttura che contiene i dati archiviati nel database. Una definizione di tale struttura, insieme ad altre informazioni quali le autorizzazioni, è archiviata in un catalogo (implementato come un set di tabelle di sistema), noto anche come dizionario dei dati.
Il driver ODBC di SQL Server Native Client consente a un'applicazione di determinare la struttura del database tramite chiamate alle funzioni del catalogo ODBC. Le funzioni di catalogo restituiscono informazioni nei set di risultati e vengono implementate utilizzando stored procedure di catalogo per eseguire query sulle tabelle di sistema nel catalogo. Un'applicazione potrebbe ad esempio richiedere un set di risultati contenente informazioni su tutte le tabelle del sistema o tutte le colonne di una particolare tabella. Le funzioni di catalogo ODBC standard vengono usate per ottenere informazioni sul catalogo da SQL Server a cui l'applicazione è connessa.
SQL Server supporta query distribuite in cui si accede a dati da più origini dati OLE DB eterogenee in una singola query. Uno dei metodi di accesso a un'origine dati OLE DB remota consiste nel definire l'origine dati come server collegato. A tale scopo, è possibile usare sp_addlinkedserver. Dopo che è stato definito il server collegato, è possibile fare riferimento agli a oggetti del server nelle istruzioni Transact-SQL utilizzando un nome costituito da quattro parti:
linked_server_name.catalog.schema.object_name.
Il driver ODBC di SQL Server Native Client supporta due funzioni specifiche del driver che consentono di ottenere informazioni sul catalogo dai server collegati:
SQLLinkedServers
Restituisce un elenco dei server collegati definiti nel server locale.
SQLLinkedCatalogs
Restituisce un elenco dei cataloghi presenti in un server collegato.
Dopo aver creato un nome del server collegato e un nome di catalogo, il driver ODBC di SQL Server Native Client supporta l'acquisizione di informazioni dal catalogo usando un nome in due parti di linked_server_name.catalog per CatalogName nelle funzioni di catalogo ODBC seguenti:
SQLColumnPrivileges
SQLColumns
SQLPrimaryKeys
SQLStatistics
SQLTablePrivileges
SQLTables
Linked_server_name in due parti.catalog è supportato anche per FKCatalogName e PKCatalogName in SQLForeignKeys.
L'utilizzo di SQLLinkedServers e SQLLinkedCatalogs richiede i file seguenti:
sqlncli.h
Include prototipi della funzione e definizioni costanti per le funzioni del catalogo del server collegato. sqlncli.h deve essere incluso nell'applicazione ODBC e deve trovarsi nel percorso di inclusione al momento della compilazione dell'applicazione.
sqlncli11.lib
Deve trovarsi nel percorso della libreria del linker e deve essere specificato come un file da collegare. sqlncli11.lib viene distribuito con il driver ODBC di SQL Server Native Client.
sqlncli11.dll
Deve essere presente in fase di esecuzione. sqlncli11.dll viene distribuito con il driver ODBC di SQL Server Native Client.
Vedi anche
SQL Server Native Client (ODBC)
SQLColumnPrivileges
SQLColumns
SQLPrimaryKeys
SQLTablePrivileges
SQLTables
SQLStatistics