관계형 데이터 모델링 프리미엄 가이드 DB구축 (2014년)
업무 식별자 0 0 39,764

by 구루비스터디 식별자 [2018.06.10]


업무 식별자

정의

  • 업무적으로 엔티티 인스턴스 구분하게 하는 식별자


특성

  • 인스턴스를 구분하는 식별자이므로 인스턴스의 갯수 늘리는데 영향을 줌
  • 업무 데이터를 쌓는 기준이 됨


ex) EMP 테이블에서
  • 사원번호가 주식별자
  • 주민번호가 업무식별자 일 때
  • --> 주민번호가 같으면 새로운 사원으로 인식하지 않겠다는 의미
  • --> 새 인스턴스 추가 기준은 주민번호 속성
  • --> 주 식별자인 사원번호는 인스턴스를 유일하게 구분하는 기능은 가지고 있지만 인스턴스 갯수를 늘리지는 못 함



  • --> 동일 인물이 재 입사 시 다른 사번을 부여 한다면 사원번호+주민번호가 업무 식별자가 되어야 함



  • --> 지정 방법에 따라 업무 데이터 관리 방법 변경


사례

  • 종속 엔티티에서의 업무 식별자는 애매 해 질 수 있다
  • 고객 - 고객주소 구조에서 고객 별 주소가 여러 개 있을 수 있음(ex 직장, 자택, ...)
  • 주 식별자는 고객번호+순번 - 고객 테이블에서 상속 + 여러 주소를 넣을 경우 고려으로
  • 업무 식별자는 고객번호+주소유형



  • 8-6 의 그림에 순번 외 주소유형코드를 식별자로 넣었을 때 업무-주 식별자가 일치
  • 주소유형코드는 부분 주 식별자(Partial Primary Identifier) 라고 함


  • 8-5 처럼 설계 하는 이점이 있는지?
  • 8-5 처럼 설계 하는것은 부분 주 식별자 + 인조 식별자로 주 식별자를 구성하는 방법
  • 엔티티에서 업무 내용을 파악하기 어려우므로 추천하지 않음


업무 식별자가 되기 위한 조건

  • 유일한 값을 가지고 있어야 함
  • 널을 허용하면 안됨
  • 수정되지 않는게 기본 원칙
  • 인스턴스를 발생시키는 값이며
  • 수정되었을 시 외래 식별자(자식 엔티티)의 값에 영향을 미치므로


생성 요령

  • 어떤 데이터를 관리 할 것인지 정한다
  • 어떤 기준으로 데이터가 생성되는지 정한다
  • 고객을 "인격체"로 정의하면 업무식별자는 주민번호
  • 고객을 "인격체 + 역할" 로 정의하면 업무식별자는 주민번호+고객유형
"구루비 데이터베이스 스터디모임" 에서 2014년에 "관계형 데이터 모델링 프리미엄 가이드" 도서를 스터디하면서 정리한 내용 입니다.

- 강좌 URL : http://www.gurubee.net/lecture/3617

- 구루비 강좌는 개인의 학습용으로만 사용 할 수 있으며, 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^

- 구루비 강좌는 서비스 제공을 위한 목적이나, 학원 홍보, 수익을 얻기 위한 용도로 사용 할 수 없습니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입