sp_primarykeys(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 2008 환경에서는 테이블 소유자에 해당합니다.[ @table_catalog = ] 'table_catalog'
지정된 table_name이 있는 카탈로그의 이름입니다. SQL Server 환경에서는 데이터베이스 이름에 해당됩니다. table_catalog는 sysname이며 기본값은 NULL입니다.
반환 코드 값
없음
결과 집합
열 이름 |
데이터 형식 |
설명 |
---|---|---|
TABLE_CAT |
sysname |
테이블 카탈로그입니다. |
TABLE_SCHEM |
sysname |
테이블 스키마입니다. |
TABLE_NAME |
sysname |
테이블 이름입니다. |
COLUMN_NAME |
sysname |
열의 이름입니다. |
KEY_SEQ |
int |
기본 키가 여러 열로 구성된 경우 열의 시퀀스 번호입니다. |
PK_NAME |
sysname |
기본 키 식별자입니다. 데이터 원본에 적용할 수 없을 경우에는 NULL을 반환합니다. |
주의
sp_primarykeys는 table_server에 해당되는 OLE DB 공급자의 IDBSchemaRowset 인터페이스에 있는 PRIMARY_KEYS 행 집합을 쿼리하여 실행됩니다. 반환되는 행 수를 제한하기 위해 table_name, table_schema, table_catalog 및 column 매개 변수가 이 인터페이스로 전달됩니다.
sp_primarykeys는 지정된 연결 서버의 OLE DB 공급자가 IDBSchemaRowset 인터페이스에서 PRIMARY_KEYS 행 집합을 지원하지 않는 경우 빈 결과 집합을 반환합니다.
사용 권한
스키마에 대한 SELECT 권한이 필요합니다.
예
다음 예에서는 AdventureWorks 데이터베이스의 HumanResources.JobCandidate 테이블에 대해 LONDON1 서버에서 기본 키 열을 반환합니다.
EXEC sp_primarykeys @table_server = N'LONDON1',
@table_name = N'JobCandidate',
@table_catalog = N'AdventureWorks',
@table_schema = N'HumanResources'