3

정말로 중요하지는 않지만 누군가 내 ERD를 모델링하는 가장 좋은 방법을 신속하게 알려줄 수 있기를 바랍니다 (IDF1X & ERWin은 첸 표기법을 사용합니다).데이터베이스 디자인 - ERD. 모델링 질문

는 기본적으로 나는 세 가지 엔티티

  1. 조직이
  2. 사람

비즈니스 규칙은 수탁자가 개인이나 조직이 될 수 있음을 명시 위임.

제 질문은, 수탁자에게 두 가지 주요 외래 키 관계가 있다는 것입니다. 조직> 수탁자 중 하나, 사람> 수탁자 중 두 번째. 관리 위원이 사람 또는 조직인지에 따라 관리 위원의 FK 필드 중 하나가 항상 NULL이됩니다.

또는 사람과 조직 (person_organisation)간에 일종의 연관 테이블을 가지고 person_Organisation> Trustee에서 PK, FK 관계를 만드는 것이 더 낫습니다.

조직과 사람 모두와 연결해야하는 다른 엔티티가있을 수 있으므로 두 번째 옵션이 더 좋습니다.

희망적으로는 의미가 있습니다.

많은 많은 감사 사전

답변

2

trustee_model

편집

음,이 역시 작동합니다 :

trustee_model_2

+0

안녕하세요 Damir, 좋아. supertype 하위 유형 방법에 대해 생각해 보았지만, 예를 들어 수탁자, 이해 관계자 및 주주와 같은 일반 수퍼 유형으로 롤업하기에 충분하지 않은 조직이나 사람이 될 수있는 다른 엔티티도 있습니다. – Pixelated

+0

Stakeholder 및 Shareholder와 같은 엔티티처럼 저에게 들리는 소리는 Justin K의 예 에서처럼 사람 또는 조직이 수행 할 수있는 역할입니다. –

+0

Damir, ERD에 대한 많은 감사는 누군가가 당신을 위해 그것을 해준 후에 항상 그렇게 분명해 보입니다. 대단히 감사합니다!:) 나는이 솔루션을 사용하여 모든 것들이 펼쳐지는 것을 보게 될 것이다. – Pixelated

1

에 그 위임이 사람이 조직에서 재생할 수있는 역할의 한 예입니다 날 것으로 보인다. 그래서 정말로, 우리는 세 가지 방법으로 연결된 Person_Organization_Role에 대해 이야기합니다.이 세 가지 모두가 기본 키입니다. 이제는 Person_Organization> PO_Role로 분류 될 수 있지만, 나의 선호는 멀리있는 것을 취하는 것이 아닙니다.

+0

안녕하세요 저스틴. 응답에 대한 많은 감사드립니다. 사람이 조직과 함께 정리되지 않은 경우에도 솔루션이 계속 작동합니까? – Pixelated

+0

실제 테이블은 (person_id, org_id, role_id)이 될 것이므로 여전히 Person 테이블을 가지며 연관에 참조되지 않은 행을 가질 수 있습니다. –

+0

충고에 대한 환호. 나는 분명히 배우기 때문에 당신과 같은 해결책은 대단히 감사하게 생각합니다. – Pixelated