본문 바로가기

잘못 표현된 관계선 2 - 속성으로 관리하려는 관계 - 참조 무결성 제약 Referencial Integrity Constraints - 바로 상위의 1촌 관계 계속 강조하고 있는 위의 요소는 사실 참조 무결성 제약이 존재할 때만 관계선으로 표현해야 한다는 것으로 간단히 설명할 수 있습니다. 이번 글은 잘못 표현된 관계를 RI 관점에서 살펴보도록 하겠습니다. [그림1] 모델에서 외국인 고객은 고객 엔터티에 통합되지 않고 별개로 관리되고 있습니다. 이 모델에서 외국인거래 엔터티는 외국인이 거래한 데이터를 관리하는 엔터티이므로 b관계는 꼭 필요한 맞는 관계입니다. 1촌 관계이고요. [그림1] 그런데 b관계로 표현하지 않고 a관계로 표현하면 잘못된 관계입니다. 식별자(PK)가 같아서 무심코 표현한 것이죠. 고객 엔터티와 외국인거래 .. 더보기
잘못 표현된 관계선 1 관계선을 잘못 표현하는 유형은 크게 두 가지가 있습니다. 엔터티 간에 연관성이 존재하는데도 관계를 표현하지 않는 예가 있으며, 연관성이 없는데도 관계를 표현하는 예가 있습니다. 모델링을 수행할 때 가장 부족한 부분이 엔터티의 정의(엔터티 설명을 의미하는 것이 아님)와 관계선의 표현인데요. 아래 세 가지 정도를 항상 염두에 두면서 관계를 도출하면 좋을 거 같습니다. - 속성으로 관리하려는 관계 - 참조 무결성 제약 Referencial Integrity Constraints - 바로 상위의 1촌 관계 이전 글에서도 설명한 위의 세 가지 요소를 기준으로 해당 사항이 없으면 관계선으로 표현하면 안 됩니다. 보통 엔터티 간의 연관성이 조금이라도 보이면 관계선을 표현할 때가 많습니다. 흔한 예가 식별자가 유사할 .. 더보기
관계 도출 시 핵심 요소 아래는 관계를 도출할 때 반드시 염두에 두어야 하는 내용입니다. 첫째. 속성으로 관리하려는 관계 둘째. 참조 무결성 관계 Referencial Integrity Relationship 셋째. 바로 상위의 1촌 관계 당연한 얘기지만 관계선을 표현할 때 최우선으로 고려해야 할 것이 관리하고자 하는 관계인지를 따져야 한다는 것입니다. 간혹 관리하지 않아도 무관한 관계선을 표현하는 예가 있습니다. 이는 업무에 관한 얘기이기도 합니다. 데이터로 업무가 틀렸음을 판단할 수 있는 경우가 있습니다. 더 나아가 효율적인 업무도 데이터를 보고 만들 수 있습니다(물론 모델러가 업무의 잘잘못을 따지는 것은 바람직하지 않다고 보며 이와 관련된 논쟁은 약간 소모적인 논쟁이 됩니다). 어쨌든 틀리거나 무의미한 업무에 대해서 검증은.. 더보기