Udostępnij za pomocą


sp_primarykeys (Transact-SQL)

Dotyczy:SQL Server

Zwraca główne kolumny klucza, po jednym wierszu na kolumnę klucza, dla określonej zdalnej tabeli.

Transact-SQL konwencje składni

Składnia

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

Arguments

[ @table_server = ] N'table_server'

Nazwa połączonego serwera, z którego zwraca się informacje o kluczu głównym. @table_server to sysname, bez domyślnego ustawienia.

[ @table_name = ] N'table_name'

Nazwa tabeli, dla której należy dostarczać informacje o kluczu podstawowym. @table_name to nazwa systemu, z domyślnym .NULL

[ @table_schema = ] N'table_schema'

Schemat tabeli. @table_schema to nazwa systemu z domyślnym .NULL W środowisku SQL Server ta wartość odpowiada właścicielowi tabeli.

[ @table_catalog = ] N'table_catalog'

Nazwa katalogu, w którym znajduje się określone @table_name . @table_catalog to nazwa systemu, z domyślnym .NULL W środowisku SQL Server ta wartość odpowiada nazwie bazy danych.

Zwracanie wartości kodu

Żaden.

Zestaw wyników

Nazwa kolumny Typ danych Description
TABLE_CAT sysname Katalog stołów.
TABLE_SCHEM sysname Schemat tabeli.
TABLE_NAME sysname Nazwa tabeli.
COLUMN_NAME sysname Nazwa kolumny.
KEY_SEQ int Numer sekwencyjny kolumny w wielokolumnowym kluczu podstawowym.
PK_NAME sysname Identyfikator klucza głównego. Zwroty NULL , jeśli nie dotyczą źródła danych.

Uwagi

sp_primarykeys jest wykonywany przez zapytanie do zestawu PRIMARY_KEYS wierszy interfejsu dostawcy OLE DB odpowiadającego IDBSchemaRowset@table_server. Parametry są przekazywane do tego interfejsu, aby ograniczyć liczbę zwracanych wierszy.

sp_primarykeys zwraca pusty zbiór wyników, jeśli dostawca bazy danych OLE na określonym serwerze powiązanym nie obsługuje zestawu PRIMARY_KEYS wierszy interfejsu IDBSchemaRowset .

Permissions

Wymaga SELECT zgody na schemat.

Przykłady

Poniższy przykład zwraca kolumny klucza pierwotnego z serwera LONDON1 dla tabeli HumanResources.JobCandidate w bazie AdventureWorks2025 danych.

EXECUTE sp_primarykeys
    @table_server = N'LONDON1',
    @table_name = N'JobCandidate',
    @table_catalog = N'AdventureWorks2022',
    @table_schema = N'HumanResources';