NOT NULL 및 UNIQUE 제약조건

SQL로 배우는 관계형 데이터베이스 입문

Timo Grossenbacher

Data Journalist

NOT NULL 제약조건

  • 특정 열에 NULL 값을 허용하지 않음
  • 현재 상태에서 반드시 충족
  • 향후 상태에서도 반드시 충족
SQL로 배우는 관계형 데이터베이스 입문

NULL의 의미는?

  • 알 수 없음
  • 존재하지 않음
  • 적용되지 않음
  • ...
SQL로 배우는 관계형 데이터베이스 입문

NULL의 의미: 예시

CREATE TABLE students (
 ssn integer not null,
 lastname varchar(64) not null,
 home_phone integer,
 office_phone integer
);
NULL != NULL
SQL로 배우는 관계형 데이터베이스 입문

NOT NULL 제약조건 추가/제거 방법

테이블 생성 시...

CREATE TABLE students (
 ssn integer not null,
 lastname varchar(64) not null,
 home_phone integer,
 office_phone integer
);

테이블 생성 후...

ALTER TABLE students 
ALTER COLUMN home_phone 
SET NOT NULL;
ALTER TABLE students 
ALTER COLUMN ssn 
DROP NOT NULL;
SQL로 배우는 관계형 데이터베이스 입문

UNIQUE 제약조건

  • 열의 중복 값을 허용하지 않음
  • 현재 상태에서 반드시 충족
  • 향후 상태에서도 반드시 충족

SQL로 배우는 관계형 데이터베이스 입문

UNIQUE 제약조건 추가하기

CREATE TABLE table_name (
 column_name UNIQUE
);
ALTER TABLE table_name
ADD CONSTRAINT some_name UNIQUE(column_name);
SQL로 배우는 관계형 데이터베이스 입문

데이터베이스에 적용해 봅시다!

SQL로 배우는 관계형 데이터베이스 입문

Preparing Video For Download...