返回指定遠程表的主鍵列,每個鍵列占一行。
sp_primarykeys [ @table_server = ] 'table_server'
[ , [ @table_name = ] 'table_name' ]
[ , [ @table_schema = ] 'table_schema' ]
[ , [ @table_catalog = ] 'table_catalog' ]
[@table_server =] 'table_server'
是鏈接服務器名稱,將從該服務器返回主鍵信息。table_server 為 sysname 類型,無默認值。
[@table_name =] 'table_name'
是提供其主鍵信息的表名。table_name 為 sysname 類型,其默認值為 NULL。
[@table_schema =] 'table_schema'
表架構。table_schema 的數據類型為 sysname,默認值為 NULL。在 Microsoft® SQL Server™ 環(huán)境中,這相當于表的所有者。
[@table_catalog =] 'table_catalog'
是指定的 table_name 所在的目錄名。在 Microsoft SQL Server 環(huán)境中,這相當于數據庫名稱。table_catalog 為 sysname 類型,其默認值為 NULL。
無
| 列名 | 數據類型 | 描述 |
|---|---|---|
| TABLE_CAT | sysname | 表目錄。 |
| TABLE_SCHEM | sysname | 表架構。 |
| TABLE_NAME | sysname | 表的名稱。 |
| COLUMN_NAME | sysname | 列名。 |
| KEY_SEQ | int | 多列主鍵中列的序列號。 |
| PK_NAME | sysname | 主鍵標識符。如果對數據源不適用,則返回 NULL。 |
sp_primarykeys 是通過查詢 table_server 所對應的 OLE DB 提供程序的 IDBSchemaRowset 接口的 PRIMARY_KEYS 行集來執(zhí)行的。table_name、table_schema、table_catalog 和 column 參數傳遞到此接口,用以限制返回的行。
若指定鏈接服務器的 OLE DB 提供程序不支持 IDBSchemaRowset 接口的 PRIMARY_KEYS 行集,sp_primarykeys 將返回空結果集。
執(zhí)行權限默認授予 public 角色。
下面的示例返回服務器 LONDON1 上數據庫 Northwind 中表 Customers 的主鍵列。
USE master
EXEC sp_primarykeys @table_server = N'LONDON1',
@table_name = N'Customers',
@table_catalog = N'Northwind',
@table_schema = N'dbo'
相關文章