여러 FKS :SQL : 관계형 DB 설계 - 같은 테이블
의 내가 두 개의 테이블이 있다고 가정 해 봅시다 :
Person
Contract
을 그리고의 말을하자 나는 한 가지 계약 (한 사람 만 포함)과 공동 계약 (두 사람 포함)의 두 가지 유형의 계약을 체결합니다. 다른 순열은 없습니다.
그것은이 널 중 하나는 두 개의 FK 필드와 계약 테이블을 설정하는 가장 간단한 것 즉 :
계약 :
ContractID Description PersonID PersonID_Second
1 Single person contract 1112 NULL
2 Joint contract 1073 900
이 나쁜 생각인가?
감사
칼
확실히 두 사람의 구별이 있습니다. 하나는 계약 보유자이고, 다른 하나는 귀하가 지시 한대로 "타고 가십시오"입니다. 이 방법으로 계약에 배정 된 사람의 수가 계속 증가 할 확률은 0이 아니지만 충분히 작습니다. 나는 3 + 사람을 동일한 계약에 배정하는 사용자에 대해 더 걱정한다. 현재로서는 100 % 확률이 잘못되었다. 여전히 M : N 관계 사용을 배제하지 않고 적절한 제약 조건이있는 ContractPerson 테이블의 "PersonNumber"필드 만 있으면됩니다. – Karl