본문으로 건너뛰기
실습하기

UNIQUE와 DEFAULT 제약

SQL에서는 열에 대해 규칙을 강제하는 제약 조건을 정의할 수 있습니다. 대표적인 두 가지 제약은 다음과 같습니다.

  • UNIQUE: 한 열의 모든 값이 서로 달라야 함
  • DEFAULT: 값이 지정되지 않았을 때 자동으로 채워질 기본값 제공

UNIQUE 제약

UNIQUE 제약은 같은 열에서 두 행이 동일한 값을 가질 수 없게 합니다.

이메일에 대한 UNIQUE 제약
CREATE TABLE clients (
id INT PRIMARY KEY,
email TEXT UNIQUE,
name TEXT,
status TEXT DEFAULT 'active'
);

이 테이블에서 email 열은 UNIQUE이므로, 예를 들어 jiwon@example.com 같은 이메일은 한 명의 고객만 사용할 수 있습니다.


DEFAULT 제약

DEFAULT 제약은 값이 주어지지 않았을 때 자동으로 특정 값을 설정합니다.

DEFAULT 제약이 있는 테이블 생성
CREATE TABLE clients (
id INT PRIMARY KEY,
email TEXT UNIQUE,
name TEXT,
status TEXT DEFAULT 'active'
);

여기서는 status에 값을 지정하지 않으면 기본값으로 'active'이 설정됩니다.


INSERT INTO 예시

아래 쿼리는 이름이 박서연인 새 고객을 추가합니다.

기본값을 사용한 INSERT
INSERT INTO clients (id, email, name)
VALUES (6, 'seoyeon.park@newdomain.kr', '박서연');

status를 지정하지 않으면 기본값인 'active'가 사용됩니다.

다음 내용이 궁금하다면?

코드프렌즈 PLUS 멤버십 가입 or 강의를 등록해 주세요!