sp_primarykeys (Transact-SQL)

Se aplica a:SQL Server

Devuelve las columnas de clave principal, una fila por cada columna de clave, para la tabla remota especificada.

Convenciones de sintaxis de Transact-SQL

Sintaxis

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

Argumentos

[ @table_server = ] 'table_server'_ Es el nombre del servidor vinculado desde el que se va a devolver información de clave principal. table_server es sysname, sin ningún valor predeterminado.

[ @table_name = ] 'table_name' Es el nombre de la tabla para la que se va a proporcionar información de clave principal. table_name es sysname, con un valor predeterminado de NULL.

[ @table_schema = ] 'table_schema' Es el esquema de la tabla. table_schema es sysname, con un valor predeterminado de NULL. En el entorno de SQL Server, esto corresponde al propietario de la tabla.

[ @table_catalog = ] 'table_catalog'Es el nombre del catálogo en el que reside el table_name especificado. En el entorno de SQL Server, corresponde al nombre de la base de datos. table_catalog es sysname, con un valor predeterminado de NULL.

Valores de código de retorno

None

Conjuntos de resultados

Nombre de la columna Tipo de datos Descripción
TABLE_CAT sysname Catálogo de la tabla.
TABLE_SCHEM sysname Esquema de la tabla
TABLE_NAME sysname Nombre de la tabla.
COLUMN_NAME sysname Nombre de la columna.
KEY_SEQ int Número de secuencia de la columna en una clave principal con varias columnas.
PK_NAME sysname Identificador de la clave principal. Devuelve NULL si no es aplicable al origen de datos.

Comentarios

sp_primarykeys se ejecuta consultando el conjunto de filas PRIMARY_KEYS de la interfaz IDBSchemaRowset del proveedor OLE DB correspondiente a table_server. Los parámetros table_name, table_schema, table_catalog y column se pasan a esta interfaz para restringir las filas devueltas.

sp_primarykeys devuelve un conjunto de resultados vacío si el proveedor OLE DB del servidor vinculado especificado no admite el conjunto de filas PRIMARY_KEYS de la interfaz IDBSchemaRowset.

Permisos

Es necesario contar con un permiso de tipo SELECT sobre el esquema.

Ejemplos

En el siguiente ejemplo se devuelven las columnas de clave principal del servidor LONDON1 para la tabla HumanResources.JobCandidate de la base de datos AdventureWorks2022.

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

Consulte también

Procedimientos almacenados de consultas distribuidas (Transact-SQL)
sp_catalogs (Transact-SQL)
sp_column_privileges (Transact-SQL)
sp_foreignkeys (Transact-SQL)
sp_indexes (Transact-SQL)
sp_linkedservers (Transact-SQL)
sp_tables_ex (Transact-SQL)
sp_table_privileges (Transact-SQL)
Procedimientos almacenados del sistema (Transact-SQL)