Sdílet prostřednictvím


sp_primarykeys (Transact-SQL)

platí pro:SQL Server

Vrátí sloupce primárního klíče, jeden řádek na každý sloupec klíče, pro zadanou vzdálenou tabulku.

Transact-SQL konvence syntaxe

Syntaxe

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'

Název propojeného serveru, ze kterého se vracejí informace o primárním klíči. @table_server je sysname, bez výchozího nastavení.

[ @table_name = ] 'Ntable_name'

Název tabulky, pro kterou poskytovat informace o primárních klíčích. @table_name je sysname s výchozím nastavením .NULL

[ @table_schema = ] N'table_schema'

Schéma stolu. @table_schema je sysname s výchozím nastavením NULL. V prostředí SQL Serveru tato hodnota odpovídá vlastníkovi tabulky.

[ @table_catalog = ] N'table_catalog'

Název katalogu, ve kterém se daná @table_name nachází. @table_catalog je sysname s výchozím nastavením NULL. V prostředí SQL Server tato hodnota odpovídá názvu databáze.

Hodnoty návratového kódu

Žádné.

Sada výsledků

Název sloupce Datový typ Description
TABLE_CAT sysname Katalog stolů.
TABLE_SCHEM sysname Schéma tabulky
TABLE_NAME sysname Název tabulky.
COLUMN_NAME sysname Název sloupce
KEY_SEQ int Pořadové číslo sloupce v primárním klíči s více sloupci.
PK_NAME sysname Identifikátor primárního klíče. Vrácení NULL , pokud nejsou relevantní pro datový zdroj.

Poznámky

sp_primarykeys se provádí dotazem na řádkovou sadu PRIMARY_KEYS rozhraní poskytovatele OLE DB odpovídající IDBSchemaRowset@table_server. Parametry jsou předávány tomuto rozhraní, aby omezily vrácené řádky.

sp_primarykeys vrátí prázdnou sadu výsledků, pokud poskytovatel OLE DB určeného propojeného serveru nepodporuje PRIMARY_KEYS řádkovou sadu IDBSchemaRowset rozhraní.

Povolení

Vyžaduje SELECT povolení ke schématu.

Examples

Následující příklad vrací sloupce primárního klíče ze serveru LONDON1 pro tabulku HumanResources.JobCandidate v databázi AdventureWorks2025 .

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