수색…


비고

기본 키는 테이블의 레코드를 고유하게 식별하는 데 사용됩니다. 테이블에는 기본 키가 하나만있을 수 있지만 기본 키는 여러 열로 구성 될 수 있지만 특정 유형의 복제에는 기본 키가 필요합니다.

기본 키는 종종 테이블의 클러스터 된 인덱스 로 사용되지만 (꼭 그렇게 할 필요는 없습니다.)

기본 키로 테이블 승 / 열 생성

 -- Identity primary key - unique arbitrary increment number
 create table person (
 id int identity(1,1) primary key not null,
 firstName varchar(100) not null,
 lastName varchar(100) not null,
 dob DateTime not null,
 ssn varchar(9) not null
 )

GUID 기본 키가있는 테이블 만들기

 -- GUID primary key - arbitrary unique value for table
 create table person (
 id uniqueIdentifier default (newId()) primary key,
 firstName varchar(100) not null,
 lastName varchar(100) not null,
 dob DateTime not null,
 ssn varchar(9) not null
 )

자연 키가있는 테이블 만들기

 -- natural primary key - using an existing piece of data within the table that uniquely identifies the record
 create table person (
 firstName varchar(100) not null,
 lastName varchar(100) not null,
 dob DateTime not null,
 ssn varchar(9) primary key not null
 )

합성 키가있는 테이블 만들기

 -- composite key - using two or more existing columns within a table to create a primary key
 create table person (
 firstName varchar(100) not null,
 lastName varchar(100) not null,
 dob DateTime not null,
 ssn varchar(9) not null,
 primary key (firstName, lastName, dob)
 )

기존 테이블에 기본 키 추가

ALTER TABLE person
 ADD CONSTRAINT pk_PersonSSN PRIMARY KEY (ssn)

주 키 열 (이 경우 ssn )에 동일한 후보 키가있는 행이 두 개 이상있는 경우 기본 키 값이 고유해야하므로 위의 명령문은 실패합니다.

기본 키 삭제

ALTER TABLE Person
 DROP CONSTRAINT pk_PersonSSN


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow