共用方式為


sp_primarykeys (Transact-SQL)

傳回指定的遠端資料表之主索引鍵資料行,每個索引鍵資料行一個資料列。

主題連結圖示Transact-SQL 語法慣例

語法

sp_primarykeys [ @table_server = ] 'table_server' 
     [ , [ @table_name = ] 'table_name' ] 
     [ , [ @table_schema = ] 'table_schema' ] 
     [ , [ @table_catalog = ] 'table_catalog' ]

引數

[ @table_server = ] **'**table_server'

這是傳回主索引鍵資訊的連結伺服器名稱。table_serversysname,沒有預設值。

[ @table_name = ] 'table_name'

這是提供主索引鍵資訊的資料表名稱。table_namesysname,預設值是 NULL。

[ @table_schema = ] 'table_schema'

這是資料表結構描述。table_schemasysname,預設值是 NULL。在 SQL Server 2005 環境中,這對應於資料表擁有者。

[ @table_catalog = ] 'table_catalog'

這是指定的 table_name 所在的目錄名稱。在 SQL Server 環境中,這對應於資料庫名稱。table_catalogsysname,預設值是 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 資料列集。table_nametable_schematable_catalogcolumn 參數會傳遞給這個介面來限制傳回的資料列。

如果指定連結伺服器的 OLE DB 提供者不支援 sp_primarykeys 介面的 PRIMARY_KEYS 資料列集,IDBSchemaRowset 會傳回空的結果集。

權限

需要結構描述的 SELECT 權限。

範例

下列範例會從 LONDON1 伺服器中,傳回 AdventureWorks 資料庫 HumanResources.JobCandidate 資料表的主索引鍵資料行。

EXEC sp_primarykeys @table_server = N'LONDON1', 
   @table_name = N'JobCandidate',
   @table_catalog = N'AdventureWorks', 
   @table_schema = N'HumanResources'

請參閱

參考

分散式查詢預存程序 (Transact-SQL)
sp_catalogs (Transact-SQL)
sp_column_privileges (Transact-SQL)
sp_foreignkeys (Transact-SQL)
sp_indexes (Transact-SQL)
sp_linkedservers (Transact-SQL)
sp_tables_ex (Transact-SQL)
sp_table_privileges (Transact-SQL)
系統預存程序 (Transact-SQL)

說明及資訊

取得 SQL Server 2005 協助