안녕하세요!!
오전엔 주룩주룩 비가 와서 그런가 지금은 습도 높은 더운 날씨네요.
이번 포스팅에서는 SQL 제약조건중에서 UNIQUE 조건에 대해서 알아보겠습니다.
UNIQUE 제약조건은 특정 열에 중복된 값이 입력되는 것을 방지할 수 있습니다.
사실 UNIQUE 와 PRIMARY KEY 두 조건 모두 같은 역할을 하지만 조금씩 틀립니다.
PRIMARY KEY 의 경우 하나의 테이블에 하나만 정의할 수 있지만 UNIQUE 의 경우는 여러 개를 정의할 수 있습니다.
그리고 PRIMARY KEY 조건과 달리 UNIQUE 에서는 NULL 값이 허용됩니다.
하지만 UNIQUE 조건에서는 열당 하나만 NULL 이 허용됩니다.
단일 UNIQUE 조건
CREATE TABLE PersonsUnique
(
Id int NOT NULL UNIQUE,
Name varchar(255) NOT NULL,
Address varchar(255),
City varchar(255)
);
// UNIQUE 조건을 하나만 사용한다면 위와 같이 하면되고
복수 UNIQUE 조건
CREATE TABLE PersonsUniqueMulti
(
Id int NOT NULL,
Name varchar(255) NOT NULL,
Address varchar(255),
City varchar(255),
CONSTRAINT uc_PersonID UNIQUE (Id,Name)
);
// 여러개의 칼럼에 UNIQUE 조건을 하려면 위처럼 하면됩니다.
사실 테이블을 구축할때 저의 경우 첫번째 필드는 거의 대부분 자동증가 옵션을 사용하여 PRIMARY KEY 값으로 설정하고 기타 필드를 설정합니다. 추후 프로그래밍 하다보면 아실테지만 테이블 내용중 고유값을 가진 필드가 중요한 역할을 하게 됩니다. 검색을 할때 또는 조인 구문을 만들때 등등 고유값이 없으면 중복된 값이 나오기 때문이기도 합니다.
제약조건의 경우는 테이블을 만들다 보면 자연적으로 알게되지 않을까 생각합니다. ^^
다음 포스팅에서도 제약조건중 PRIMARY KEY 조건에 대해서 설명하겠습니다.
남은 하루 마무리 잘하시고 즐거운 프로그래밍 되세요~!!
'SQL' 카테고리의 다른 글
SQL FOREIGN KEY 제약 조건 (2) | 2013.09.16 |
---|---|
SQL PRIMARY KEY 제약조건 (2) | 2013.09.12 |
SQL NOT NULL, DEFAULT 구문 (0) | 2013.09.10 |
SQL Constraints 구문 (1) | 2013.09.09 |
SQL CREATE DATABASE and TABLE 구문 (0) | 2013.09.07 |