Condividi tramite


sp_primarykeys (Transact-SQL)

Restituisce le colonne chiave primaria (una riga per ogni colonna chiave) per la tabella remota specificata.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

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

Argomenti

  • [ @table_server = ] **'**table_server'
    Nome del server collegato da cui si desidera ottenere informazioni sulla chiave primaria. table_server è di tipo sysname e non prevede alcun valore predefinito.

  • [ @table_name = ] 'table_name'
    Nome della tabella per cui si desidera ottenere informazioni sulla chiave primaria. table_nameè di tipo sysname e il valore predefinito è NULL.

  • [ @table_schema = ] 'table_schema'
    Schema della tabella. table_schema è di tipo sysname e il valore predefinito è NULL. In ambiente SQL Server 2008 corrisponde al proprietario della tabella.

  • [ @table_catalog = ] 'table_catalog'
    Nome del catalogo contenente la tabella specificata in table_name. In ambiente SQL Server corrisponde al nome del database. table_catalog è di tipo sysname e il valore predefinito è NULL.

Valori restituiti

Nessuno

Set di risultati

Nome colonna

Tipo di dati

Descrizione

TABLE_CAT

sysname

Catalogo della tabella.

TABLE_SCHEM

sysname

Schema della tabella.

TABLE_NAME

sysname

Nome della tabella.

COLUMN_NAME

sysname

Nome della colonna.

KEY_SEQ

int

Numero di sequenza della colonna in una chiave primaria a più colonne.

PK_NAME

sysname

Identificatore della chiave primaria. Se non è applicabile all'origine dei dati, restituisce NULL.

Osservazioni

La stored procedure sp_primarykeys viene eseguita tramite una query nel set di righe PRIMARY_KEYS dell'interfaccia IDBSchemaRowset del provider OLE DB corrispondente a table_server. I parametri table_name, table_schema, table_catalog e column vengono passati a questa interfaccia per limitare il numero di righe restituite.

Se il provider OLE DB del server collegato specificato non supporta il set di righe PRIMARY_KEYS dell'interfaccia IDBSchemaRowset, la stored procedure sp_primarykeys restituisce un set di risultati vuoto.

Autorizzazioni

È richiesta l'autorizzazione SELECT per lo schema.

Esempi

Nell'esempio seguente vengono restituite le colonne chiave primaria dal server LONDON1 per la tabella HumanResources.JobCandidate nel database AdventureWorks2008R2.

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