共用方式為


使用目錄函數

所有資料庫都有包含儲存在資料庫之資料的結構。 此結構的定義以及權限之類的其他資訊會儲存在目錄 (當做一組系統資料表實作) 中,也就是所謂的資料字典。

SQL Server Native Client ODBC 驅動程式可讓應用程式透過呼叫 ODBC 目錄函數來判斷資料庫結構。 目錄函數會在結果集中傳回資訊,而且會使用目錄預存程序進行實作以便查詢目錄中的系統資料表。 例如,應用程式可能要求的結果集包含系統上所有資料表,或是特定資料表中所有資料行的相關資訊。 標準 ODBC 目錄函數用於取得應用程式所連接之 SQL Server 的目錄資訊。

SQL Server 支援分散式查詢,其中來自多個異質 OLE DB 資料來源的資料會以單一查詢進行存取。 存取遠端 OLE DB 資料來源的其中一個方法是將資料來源定義為連結伺服器。 這可透過使用 sp_addlinkedserver 完成。 在定義連結伺服器之後,您可以在 Transact-SQL 陳述式中使用四部份名稱來參考該伺服器中的物件:

linked_server_name.catalog.schema.object_name.

SQL Server Native Client ODBC 驅動程式支援兩種驅動程式專用的函數,可協助取得連結伺服器的目錄資訊:

  • SQLLinkedServers

    傳回在本機伺服器上定義的連結伺服器清單。

  • SQLLinkedCatalogs

    傳回連結伺服器中所包含的目錄清單。

在您擁有連結伺服器名稱和目錄名稱之後,SQL Server Native Client ODBC 驅動程式支援在下列 ODBC 目錄函數上使用兩段式名稱 linked_server_name**.**catalog 做為 CatalogName,以取得目錄中的資訊。

  • SQLColumnPrivileges

  • SQLColumns

  • SQLPrimaryKeys

  • SQLStatistics

  • SQLTablePrivileges

  • SQLTables

SQLForeignKeys 上的 FKCatalogNamePKCatalogName 也支援兩段式的 linked_server_name**.**catalog

使用 SQLLinkedServers 和 SQLLinkedCatalogs 需要下列檔案:

  • sqlncli.h

    包括適用於連結伺服器目錄函數的函數原型與常數定義。 sqlncli.h 必須包含在 ODBC 應用程式中,而且必須在應用程式編譯時的 Include 路徑中。

  • sqlncli11.lib

    必須位於連結器 (Linker) 的程式庫路徑中,並指定為要連結的檔案。 sqlncli11.lib 是透過 SQL Server Native Client ODBC 驅動程式散發。

  • sqlncli11.dll

    在執行時間必須存在。 sqlncli11.dll 是透過 SQL Server Native Client ODBC 驅動程式散發。

請參閱

概念

SQL Server Native Client (ODBC)

SQLColumnPrivileges

SQLColumns

SQLPrimaryKeys

SQLTablePrivileges

SQLTables

SQLStatistics