다음은 데이터베이스의 단순화입니다.SQL2005 : 테이블을 여러 테이블에 연결하고 Ref Integrity를 유지 하시겠습니까?
Table: Property Fields: ID, Address Table: Quote Fields: ID, PropertyID, BespokeQuoteFields... Table: Job Fields: ID, PropertyID, BespokeJobFields...
그런 다음 Quote 및 Job 테이블과 관련된 다른 테이블이 있습니다.
이제 사용자가 작업 및 견적과 관련하여 고객이 남긴 전화 메시지를 녹음 할 수있는 Message 테이블을 추가해야합니다.
두 개의 동일한 테이블 ( QuoteMessage 및 JobMessage)을 만들 수 있지만 이는 DRY 원칙에 위배되며 지저분 해 보입니다.
하나의 메시지 테이블을 만들 수 있습니다 :
Table: Message Fields: ID, RelationID, RelationType, OtherFields...
그러나 이것은 참조 무결성을 적용하기 위해 제약 조건을 사용하지 못하도록합니다. 나는 또한 나중에 SQL에 Linq를 사용하여 devlopment 측면과 문제를 만드는 forsee 수 있습니다.
이 문제에 대한 우아한 해결책이 있습니까? 아니면 궁극적으로 함께 해킹해야할까요?
번즈