1-1장 데이터 모델링의 이해 - 4절 관계

Study/SQLD

1-1장 데이터 모델링의 이해 - 4절 관계

tnddj1219 2022. 6. 12. 16:34
728x90

1. 관계의 개념

관계의 정의
엔터티와 인스턴스 사이의 논리적인 연관성으로서 존재의 형태로서나 행위로서 서로에게 연관성이 부여된 상태
엔터티와 엔터티 간 연관성을 표현하기 때문에 엔터티의 정의에 따라 영향을 받기도 하고, 속성 정의 및 관계 정의에 따라도 다양하게 변할 수 있다.

관계의 패어링
관계는 엔터티 안에 인스턴스가 개별적으로 관계를 가지는 것이고, 이것의 집합을 관계로 표현한다는 것
각각의 엔터티의 인스턴스들은 자신이 관련된 인스턴스들과 관계의 어커런스로 참여하는 형태를 관계를 페어링이라함


2.
관계의 종류

관계의 분류
존재 관계(연관 관계): 엔터티 간의 상태
행위 관계(의존 관계): 엔터티 간에 발생하는 행위

관계를 표현할 때
ERD: 표기 구분 안함
UML: 연관관계 – 실선 표시 / 의존관계 – 점선 표시


3.
관계의 표기법

관계명
엔터티가 관계에 참여하는 형태를 지칭. 각각의 관계는 두개의 관계명을 가지고 있다. 또한 각각의 관계명은 두가지의 관점으로 표현될 수 있다.
엔터티에서 관계를 시작하는 편은 관계시작점 / 엔터티에서 관계가 부르고 받는 편을 관계끝점
관계시작점과 끝점 모두 관계이름을 가짐.
참여자의 관점에 따라 관계이름이 능동적이거나 수동적으로 명명(애매한 동사 X, 현재형으로 표현)

관계차수
두개의 엔터티 간의 관계에서 참여자수를 표현하는 것. 1:1 / 1:M / M:N 있음
가장 중요한 고려 사항: 한 개의 관계가 존재하느냐 아니면 두 개 이상의 멤버쉽이 존재하는지 파악하는 것이 중요

종류 내용 예시
1:1 관계 관계에 참여하는 각각의 엔터티는 관계를 맺는 엔터티에 대해 단지 하나의 관계만을 가짐
1:N 관계 관계에 참여하는 각각의 엔터티는 관계를 맺는 다른 엔터티에 대해 하나나 그 이상의 수와 관계 가짐
M:N 관계 관계에 참여하는 각각의 엔터티는 관계를 맺는 다른 엔터티에 대해 하나나 그 이상의 수와 관게를 가지고 있다.
반대의 방향도 동일하게 관계와 참여하는 각각의 엔터티는 관계를 맺는 다른 엔터티에 대해 하나 또는 그 이상의 수와 관계를 가짐
M:N 관계로 표현된 데이터 모델은 이후에 두개의 주식별자를 상속받는 관계엔터티를 이용해 3개의 엔터티로 구분하여 표현


관계 선택 사양
관계선택사양은 관계를 통한 상대방과의 업무적인 제약조건을 표현하는 것. 간단하면서 아주 중요한 표기법
필수 참여 관계: 필수적으로 연결된 관계. 모든 참여자가 반드시 가지는, 타 엔터티의 참여자와 연결이 되어야 하는 관계
선택 참여 관계: 서로 관련은 있지만 서로가 필수적인 관계가 아닌 선택적인 관계


4. 관계의 정의 및 읽는방법

관계 체크 사항
두 개의 엔터티 사이에 연관규칙이 존재하는가?
두 개의 엔터티 사이에 정보의 조합이 발생되는가?
업무기술서, 장표에 관계연결에 대한 규칙이 서술되어 있는가?
엽무기술서, 장표에 관계연결을 가능하게 하는 동사가 있는가?

관계 읽기
각각의/하나의 → 기준 엔터티 → 관계차수 → 관계 엔터티 → 선택사양 필수/선택 → 관계명
1. 기준 엔터티를 한 개 또는 각으로 읽는다.
2. 대상 엔터티의 관계참여도 즉 개수(하나, 하나 이상)을 읽는다
3. 관계 선택사양과 관계명을 읽는다.

728x90