6 장. ER-관계 사상에 의한 관계 데이터베이스 설계
[그림 6.1] COMPANY 데이터베이스에 대한 ER 개념적 스키마 다이어그램
[그림 6.2] COMPANY ER 스키마를 관계 데이터베이스 스키마로 사상한 결과
[그림 4.6] COMPANY 스키마의 관계 데이터베이스 인스턴스
6.6.1 ER-관계 사상 알고리즘 단계 1 엔티티 타입은 릴레이션으로 매핑한다. 엔티티 타입의 키 중에서 하나를 릴레이션의 기본 키로 지정한다. EMPLOYEE FNAME MINIT LNAME SSN BDATE ADDRESS SEX SALARY DEPARTMENT PROJECT DNAME DNUMBER PNAME PNUMBER PLOCATION
단계 2 약한 엔티티 타입도 릴레이션으로 매핑하되 소유 릴레이션 (owner relation)의 키 속성을 포함시킨다. 생성된 릴레이션의 기본 키는 소유 릴레이션의 키와 약한 엔티티 타입의 부분키를 합쳐서 만든다 DEPENDENT ESSN DEPARTMENT_NAME SEX BDATE RELATIONSHIP
1:1 이진 관계는 관계에 참여하는 두 릴레이션 중에서 어느 하나의 외래키 속성으로 매핑한다. 단계 3 1:1 이진 관계는 관계에 참여하는 두 릴레이션 중에서 어느 하나의 외래키 속성으로 매핑한다. DEPARTMENT DNAME DNUMBER MGRSSN MGRSTARTDATE
1:N 이진 관계는 N-side 릴레이션의 외래키 속성으로 매핑하며, 1-side의 주 키를 참조하도록 한다. 단계 4 1:N 이진 관계는 N-side 릴레이션의 외래키 속성으로 매핑하며, 1-side의 주 키를 참조하도록 한다. EMPLOYEE FNAME MINIT LNAME SSN BDATE ADDRESS SEX SALARY SUPERSSN DNO PROJECT PNAME PNUMBER PLOCATION DNUM
단계 5 N:M 이진 관계는 별도의 릴레이션 (이를 관계 릴레이션이라고 부름)으로 생성하고, 관계에 참여하는 두 릴레이션의 기본 키 를 각각 참조하는 외래키로 애트리뷰트를 구성한다. 이 때 두 외래키가 관계 릴레이션의 기본키를 형성한다. WORKS_ON ESSN PNO HOURS
다중값 애트리뷰트는 키를 포함하는 릴레이션으로 매핑된다. 단계 6 다중값 애트리뷰트는 키를 포함하는 릴레이션으로 매핑된다. DEPT_LOCATION DNUMBER DLOCATION
[그림 6.2] COMPANY ER 스키마를 관계 데이터베이스 스키마로 사상한 결과
단계 7 n 차 관계는 관계에 참여하는 n 개의 릴레이션의 키들로 구성되는 관계 릴레이션으로 매핑된다. 관계 릴레이션의 애트리뷰트들은 참여 릴레이션의 주키를 참조하는 외래키들과 관계 속성(들)으로 구성된다.
[그림 3.17] 삼진 관계 타입 (a) SUPPLY 관계
[그림 6.4] 그림 3.17(a)로부터 n차 관계 타입 SUPPLY의 사상