Search

2015년 11월 4일 수요일

[Database] [MSSQL] 테이블에 제약조건(기본키; Primary Key) 추가하기.

* A_Table의 Column_01은 기본 키로, 항상 중복되지 않은 상태를 유지하고 싶을 경우, 다음과 같이 테이블을 생성하면 된다.

CREATE TABLE A_Table(
 Column_01 VARCHAR(10) NOT NULL,
 Column_02 VARCHAR(10) NULL,
 Column_03 VARCHAR(10) NULL,
 CONSTRAINT PK_A_Table PRIMARY KEY CLUSTERED
(
 Column_01 ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]

* 이미 A 테이블이 생성되어 있다면, ALTER 구문으로도 다음과 같이 추가 가능하다. (아래의 예에서는 CHECK 옵션을 통해 제약조건에 부합하는지를 확인했다.)

ALTER TABLE A_Table
WITH CHECK ADD CONSTRAINT PK_A_Table PRIMARY KEY CLUSTERED
(
 Column_01 ASC
) WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]

* 여러개의 키값을 갖게 하려면? 제약조건(CONSTRAINT)에 다음과 같이 간단하게 추가할 수 있다.

CREATE TABLE A_Table(
 Column_01 [nchar](10) NOT NULL,  Column_02 [nchar](10) NOT NULL,  Column_03 [nchar](10) NOT NULL,  CONSTRAINT [PK_A_Table] PRIMARY KEY CLUSTERED (  Column_01 ASC,  Column_02 ASC,  Column_03 DESC ) WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY] ) ON [PRIMARY]


댓글 없음:

댓글 쓰기