sp_primarykeys (Transact-SQL)
Retorna as colunas de chave primária, uma linha por coluna de chave, da tabela remota especificada.
Convenções da sintaxe Transact-SQL
Sintaxe
sp_primarykeys [ @table_server = ] 'table_server'
[ , [ @table_name = ] 'table_name' ]
[ , [ @table_schema = ] 'table_schema' ]
[ , [ @table_catalog = ] 'table_catalog' ]
Argumentos
[ @table_server = ] **'**table_server'
É o nome do servidor vinculado a partir do qual as informações de chave primária devem ser retornadas. table_server é sysname, sem padrão.[ @table_name = ] 'table_name'
É o nome da tabela para a qual as informações de chave primária devem ser fornecidas. table_name é sysname, com um padrão NULL.[ @table_schema = ] 'table_schema'
É o esquema de tabela. table_schema é sysname, com o padrão de NULL. No ambiente do SQL Server, isso corresponde ao proprietário de tabela.[ @table_catalog = ] 'table_catalog'
É o nome do catálogo no qual o table_name especificado reside. No ambiente do SQL Server, isto corresponde ao nome do banco de dados. table_catalog é sysname, com um padrão de NULL.
Valores de código de retorno
Nenhum.
Conjuntos de resultados
Nome da coluna |
Tipo de dados |
Descrição |
---|---|---|
TABLE_CAT |
sysname |
Catálogo da tabela. |
TABLE_SCHEM |
sysname |
Esquema da tabela. |
TABLE_NAME |
sysname |
Nome da tabela. |
COLUMN_NAME |
sysname |
Nome da coluna. |
KEY_SEQ |
int |
Número de sequência da coluna em uma chave primária de várias colunas. |
PK_NAME |
sysname |
Identificador de chave primária. Retorna NULL se não for aplicável à fonte de dados. |
Comentários
sp_primarykeys é executado consultando-se o conjunto de linhas PRIMARY_KEYS da interface IDBSchemaRowset do provedor OLE DB correspondente a table_server. Os parâmetros table_name, table_schema, table_catalog e column são passados para essa interface a fim de restringir as linhas retornadas.
sp_primarykeys retornará um conjunto de resultados vazio se o provedor OLE DB do servidor vinculado especificado não oferecer suporte ao conjunto de linhas PRIMARY_KEYS da interface IDBSchemaRowset.
Permissões
Requer a permissão SELECT no esquema.
Exemplos
O exemplo a seguir retorna as colunas da chave primária do servidor LONDON1 para a tabela HumanResources.JobCandidate no banco de dados AdventureWorks2012 .
EXEC sp_primarykeys @table_server = N'LONDON1',
@table_name = N'JobCandidate',
@table_catalog = N'AdventureWorks2012',
@table_schema = N'HumanResources';
Consulte também
Referência
Procedimentos armazenados de consultas distribuídas (Transact-SQL)
sp_column_privileges (Transact-SQL)
sp_linkedservers (Transact-SQL)