sp_primarykeys (Transact-SQL)
Gibt für die angegebene Remotetabelle die Primärschlüsselspalten zurück, wobei pro Schlüsselspalte eine Zeile ausgegeben wird.
Syntax
sp_primarykeys [ @table_server = ] 'table_server'
[ , [ @table_name = ] 'table_name' ]
[ , [ @table_schema = ] 'table_schema' ]
[ , [ @table_catalog = ] 'table_catalog' ]
Argumente
[ @table_server = ] **'**table_server'
Der Name des Verbindungsservers, von dem Primärschlüsselinformationen zurückgegeben werden. table_server ist vom Datentyp sysname und hat keinen Standard.[ @table_name = ] 'table_name'
Der Name der Tabelle, für die Primärschlüsselinformationen bereitgestellt werden sollen. table_name ist vom Datentyp sysname; der Standardwert ist NULL.[ @table_schema = ] 'table_schema'
Das Tabellenschema. table_schema ist vom Datentyp sysname; der Standardwert ist NULL. In der Umgebung von SQL Server 2008 entspricht dies dem Tabellenbesitzer.[ @table_catalog = ] 'table_catalog'
Der Name des Katalogs, zu dem der angegebene Wert von table_name gehört. In der SQL Server-Umgebung entspricht dies dem Datenbanknamen. table_catalog ist vom Datentyp sysname; der Standardwert ist NULL.
Rückgabecodewerte
Keine
Resultsets
Spaltenname |
Datentyp |
Beschreibung |
---|---|---|
TABLE_CAT |
sysname |
Der Tabellenkatalog |
TABLE_SCHEM |
sysname |
Tabellenschema |
TABLE_NAME |
sysname |
Name der Tabelle. |
COLUMN_NAME |
sysname |
Name der Spalte |
KEY_SEQ |
int |
Sequenznummer der Spalte bei einem Primärschlüssel, der durch mehrere Spalten definiert wird |
PK_NAME |
sysname |
Der Bezeichner für den Primärschlüssel. Gibt NULL zurück, wenn nicht auf die Datenquelle anwendbar |
Hinweise
sp_primarykeys wird ausgeführt, indem das PRIMARY_KEYS-Rowset der IDBSchemaRowset-Schnittstelle des OLE DB-Anbieters abgefragt wird, der table_server entspricht. Die Parameter table_name, table_schema, table_catalog und column werden an diese Schnittstelle übergeben, um die zurückgegebenen Zeilen zu beschränken.
sp_primarykeys gibt ein leeres Resultset zurück, wenn der OLE DB-Anbieter des angegebenen Verbindungsservers das PRIMARY_KEYS-Rowset der IDBSchemaRowset-Schnittstelle nicht unterstützt.
Berechtigungen
Erfordert die SELECT-Berechtigung für das Schema.
Beispiele
Im folgenden Beispiel werden Primärschlüsselspalten vom Server LONDON1 für die HumanResources.JobCandidate-Tabelle in der AdventureWorks-Datenbank zurückgegeben.
EXEC sp_primarykeys @table_server = N'LONDON1',
@table_name = N'JobCandidate',
@table_catalog = N'AdventureWorks',
@table_schema = N'HumanResources'
Siehe auch