장점

  1. 식별자를 변경할 가능성이 줄어든다.
  2. 1에 따라서 테이블 간의 설계 변경을 최소화할 수 있다.
  1. 엔티티 식별자 또는 데이터 집합 범위가 다를 경우

예: 사업자와 사업장을 합치고 사업장구분코드로 구별한다.

2.식별자를 계속 상속받아서 pk 갯수가 너무 많아질 경우

예: 입찰 - 입찰업체 - 입찰내역

입찰내역은 식별자 상속 관계에서 참조 관계(fk)로 변경한다.

대신 입찰상품번호라는 인조 pk를 사용한다.

3.pk가 개인 정보 암호화 대상 등의 이유로 사용하기 어려울 때

예: 카드번호, 계좌 번호는 개인 정보기 때문에 카드관리번호(bno)라는 인조 식별자를 pk로 사용한다.

4.pk로 사용해야 할 정보가 아직 없는 상태에서 업무를 처리해야 할 때

예: 사업자 등록 번호가 아직 없을 때, 거래처번호를 사용한다.

*가계약 번호는 pk가 될 수 없다. 바뀔 가능성이 있기 때문이다.