sp_primarykeys (Transact-SQL)
Область применения: SQL Server
Возвращает столбцы первичных ключей для указанной удаленной таблицы по одной строке на ключевой столбец.
Соглашения о синтаксисе Transact-SQL
Синтаксис
sp_primarykeys [ @table_server = ] 'table_server'
[ , [ @table_name = ] 'table_name' ]
[ , [ @table_schema = ] 'table_schema' ]
[ , [ @table_catalog = ] 'table_catalog' ]
Аргументы
[ @table_server = ] 'table_server'_
Имя связанного сервера, из которого возвращаются сведения о первичном ключе. table_server — sysname без значения по умолчанию.
[ @table_name = ] 'table_name'
Имя таблицы, для которой предоставляются сведения о первичном ключе. table_name имеет имя sysname с значением NULL по умолчанию.
[ @table_schema = ] 'table_schema'
Схема таблицы. table_schema — sysname с значением NULL по умолчанию. В среде SQL Server это соответствует владельцу таблицы.
[ @table_catalog = ] 'table_catalog'
Имя каталога, в котором находится указанный table_name . В среде SQL Server это соответствует имени базы данных. table_catalog — sysname с значением NULL по умолчанию.
Значения кода возврата
нет
Результирующие наборы
Имя столбца | Тип данных | Description |
---|---|---|
TABLE_CAT | sysname | Каталог таблицы. |
TABLE_SCHEM | sysname | Схема таблицы. |
TABLE_NAME | sysname | Имя таблицы. |
COLUMN_NAME | sysname | Имя столбца. |
KEY_SEQ | int | Порядковый номер столбца в первичном ключе, состоящем из нескольких столбцов. |
PK_NAME | sysname | Идентификатор первичного ключа. Возвращает NULL, если не применим к источнику данных. |
Замечания
sp_primarykeys выполняется путем запроса набора строк PRIMARY_KEYS интерфейса IDBSchemaRowset поставщика OLE DB, соответствующего table_server. Параметры table_name, table_schema, table_catalog и столбцов передаются в этот интерфейс, чтобы ограничить возвращаемые строки.
sp_primarykeys возвращает пустой результирующий набор, если поставщик OLE DB указанного связанного сервера не поддерживает набор строк PRIMARY_KEYS интерфейса IDBSchemaRowset.
Разрешения
Необходимо разрешение SELECT для схемы.
Примеры
В следующем примере с сервера LONDON1
возвращаются первичные ключевые столбцы для таблицы HumanResources.JobCandidate
в базе данных AdventureWorks2022
.
EXEC sp_primarykeys @table_server = N'LONDON1',
@table_name = N'JobCandidate',
@table_catalog = N'AdventureWorks2022',
@table_schema = N'HumanResources';
См. также
Хранимые процедуры распределенных запросов (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)
Системные хранимые процедуры (Transact-SQL)