2-1. 자연 키란 무엇인가

자연 키(Natural Key) 는 현실 세계에서 이미 사용 중인 비즈니스 의미를 가진 속성을 그대로 기본 키로 사용하는 방식이다.

예를 들어 다음과 같은 값들이 자연 키 후보가 된다.

자연 키는 다음과 같은 특징을 가진다.

간단한 예를 보면 다음과 같다.

CREATE TABLE member (
  email        VARCHAR(255) PRIMARY KEY, -- 자연 키
  name         VARCHAR(100)      NOT NULL,
  password     VARCHAR(255)      NOT NULL,
  created_at   DATETIME          NOT NULL
);

여기서는 email 이 곧 회원의 식별자이자 자연 키이다.


2-2. 자연 키의 장점

자연 키를 기본 키로 사용하면 다음과 같은 장점을 얻는다.

  1. 비즈니스 의미와 데이터 식별이 일치한다.
  2. 중복 검증 로직이 단순해진다.