당신은 대부분 전화 및 섹션 사이의 관계를 제거 할 수 있습니다. 한 명의 직원이 각 전화에 대해서만 답변을하면 이미 문제가 해결 된 것입니다. 해당 전화에 응답하는 직원 구성원을 기준으로 섹션에있는 전화를 알 수 있습니다.
전화가 둘 이상의 직원에 의해 응답 될 수있는 경우 해당 다 대다 관계를 나타 내기 위해 연관 테이블이 필요합니다.
각 스탭 멤버의 기본 전화 번호를 계속 추적해야하는 경우 특정 테이블의 전화 번호가 특정 사용자의 기본 번호임을 나타내는 "IsPrimary"플래그를 연결 테이블에 추가 할 수 있습니다. 이 경우 직원 구성원이 둘 이상의 기본 전화를 가지지 않도록 적어도 직원 구성원 참조에 대한 연관 테이블에 고유 한 제약 조건을 적용하고자 할 것입니다.
전화가 둘 이상의 직원 구성원의 기본이 될 수 없도록 고유 제한 조건을 추가 할 수도 있습니다.
업데이트는 대부분 전화 번호가 두 기관에서 고유하도록 할 것, 두 전화 엔티티 두 개의 전화 엔티티를하기로 결정하더라도
를 처리한다. 상호 배타적 인 하위 유형을 구현하여이를 수행 할 수 있습니다. 이를 수행하는 방법에 대한 좋은 설명은 여기에서 찾을 수 있습니다. How to Implement Referential Integrity in Subtypes
일단 하위 유형이 있으면 원래 모델을 사용할 수 있습니다. SectionPhone은 부속 유형 중 하나이며 현재 귀하의 전화 항목에있는 것입니다. StaffPhone은 Staff 테이블에 의해 참조되는 다른 부속 유형이됩니다.
전화에 sectionNumberFK가있는 이유는 무엇입니까? Section 엔티티에 Staff처럼 phoneNumber에 대한 참조가 있어야합니다. –
Section과 Staff의 관계를 제거하고 각 전화 번호에 섹션이 할당 될 때 전화 번호 속성을 사용하여 섹션 번호 속성을 찾을 수 있습니까? – Ableman
각 섹션에는 여러 개의 숫자가 있으므로 3NF에 있어야하므로 ERD에 다중 값 속성을 가질 수 없습니다. – Ableman