권장하는 식별자 선택 전략
데이터베이스의 기본키는 다음 3가지 조건을 모두 만족해야 함
- null 값을 허용하지 않음
- 유일해야 함
- 변해선 안됨
위 조건을 기반으로 테이블의 기본 키를 선택하는 전략은 크게 2가지가 있음
- 자연 키(natural key)
- 비지니스에 의미있는 혹은 연관된 키
- 예) 주민등록번호, 이메일, 전화번호 등
- 대리 (surrogate key)
- 비지니스와 관련없는 임의로 만들어진 키
- 대체 키로도 불림
- 예) 오라클 시퀀스, auto_increment. identity, 키생성 테이블 등
자연 키 보다는 대리 키를 권장하는데, 그 이유는 자연키의 경우 비지니스와 연관된 내용을 키로 사용하기 때문에 비지니스 규칙이 변경된다면 더이상 기본키의 조건을 만족하지 못할 수도 있음
참고
- 스프링 DB - 데이터 접근 활용 기술(김영한)