관계란 엔티티와 엔티티 사이의 관계를 말한다.
즉, 관리하고자 하는 업무 영역 내의 특정한 두 개의 엔티티 사이에 존재하는 많은 관계 중 특별히 관리하고자 하는 직접적인 관계(업무적 연관성)를 의미.꼭 필요한 관계만을 설정해두어야 불필요한 조인을 줄일 수 있으며, M:N의 관계에서는 개발에 들어갈 수 없다.
하나 이상(Many)
까마귀 발가락처럼 표시된 모양은 하나 이상(Many)을 나타낸다. 하나 이상이란 반드시 하나 이상이 되어야 한다는 것이 아니라 하나 이상인 것이 적어도 한가지는 존재하고 있다는 것을 의미한다.
단 하나(Only One)
수평선은 단 하나임을 의미한다. 여기서 수평선이란 직선이 될 수도 있고 점선으로 표혈될 수도 있으며 이것은 선택 사양에 따라 결정된다.
직선은 반드시 존재해야 함을 의미하고, 점선은 존재하지 않을 수도 있음을 의미한다.
일반적인 형태
- 주로 참조하는 엔티티(M쪽)는 참조되는 엔티티(1쪽)가 반드시 존재해야 하는 경우가 많이 나타난다.
- 반대로 1쪽 엔티티는 M쪽 엔티티와 반드시 관계를 맺지 않아도 되는 경우가 가장 일반적인 형태라고 할 수 있다.
바람직한 형태
- 우리는 모델링에서 가능한 직선 관계를 가지도록 특히 자식 쪽에서 노력해야한다.
즉, M쪽 관계의 선택사양을 직선관계로 만들려고 노력해야한다.- 부모 엔티티에 개체가 존재하지 않는 자식 엔티티의 개체가 많이 발생한다면 정보의 정합성에 많은 문제점이 나타나게 된다.
- 부모 실체의 식별자(UID)가 자식 실체의 식별자(UID)의 일부분이 되는 관계
- 자식 실체는 부모 실체에 대하여 존재 종속적이며, 식별종속적이다.
- 부모 실체의 식별자(UID)가 실체의 식별자(UID)의 일부분이 아닌 관계
- 자식 실체는 부모 실체에 대하여 존재 종속적이지만, 식별 종속적은 아니다.
식별종속적은 FK로 식별되는 관계를 의미한다.
관계속성이 있다는 것은 부모 엔티티의 식별자를 자식 엔티티의 관계속성으로 물려받았다는 의미
두 집합 간의 관계는 두 집합 각각의 관점에서 바라 본 관계가 궁극정으로는 합성된 형태가 완성된 관계가 된다.
1. 대부분 기본형이다.(70~80%)
2. 먼저 관계형태부터 확인한 후 기본형을 그린다.
3. 당사자 간의 구체적인 선택사양을 검증한다.
4. 구체적 검증 시에 관계형태가 달라질 수도 있다.