■ 관계
엔터티의 인스턴스 사이의 논리적인 연관성으로서 존재의 형태로서나 행위로서 서로에게 연관성이 부여된 상태
■ 관계의 페어링
페어링
- 엔터티 내 인스턴스 간의 개별적 연관성
페어링의 집합 -> 관계
최초의 ERD(Peter Chen 모델)에서 관계는 속성을 가질 수 있었으나, 최근 ERD(IE 모델)에서 관계는 속성을 갖지 않음
■ 관계의 분류
존재에 따른 분류
- 엔터티 간의 상태를 나타낸다.
- UML에서 연관관계 : 실선으로 표현되고 소스코드에서 멤버변수로 선언
행위에 의한 관계
- 엔터티와 엔터티 사이의 행위
- UML에서 의존관계 : 점선으로 표현되고 행위를 나타내는 코드인 Operation(Method)에서 파라미터 등으로 이용
ERD에서는 존재적 관계와 행위에 의한 관계를 구분하지 않음
SQLD 자격검정 실전문제
제 1장 - 20번
■ 관계의 표기법
■ 관계명(Membership) : 관계의 이름
- 각 관계는 두 방향의 관계명을 가진다.
- 애매한 동사를 피한다. (관계된다, 관련이 있다 X)
- 현재형으로 표현한다. (신청했다,강의를 할 것이다 X)
■ 관계차수(Cardinality) : 1:1, 1:M, M:N
- 각 관계에 참여할 수 있는 인스턴스의 수
1:1(ONE TO ONE) 관계
1:M(ONE TO MANY) 관계
M:N(MANY TO MANY) 관계
■ 관계선택사양(Optionality) : 필수관계, 선택관계
관계의 양쪽이 Optional인 경우, 해당 관계는 잘못 설정되었을 가능성이 크다.
SQLD 자격검정 실전문제
제 1장 - 21,22번
■ 관계 정의시 주의할 사항
- 두 개의 엔터티 사이에 관심 있는 연관규칙이 존재하는가?
- 두 개의 엔터티 사이에 정보의 조합이 발생되는가?
- 업무기술서, 장표에 관계 연결에 대한 규칙이 서술되어 있는가?
- 업무기술사, 장표에 관계연결을 가능하게 하는 동사(Verb)가 있는가?
SQLD 자격검정 실전문제
제 1장 - 23,24번
■ 관계를 읽는 방법
- 기준(Source) 엔터티를 한 개(One) 또는 각(Each)으로 읽는다.
- 대상(Target) 엔터티의 관계참여도 즉 개수(하나, 하나 이상)를 읽는다.
- 관계선택사양과 관계명을 읽는다.
'SQL' 카테고리의 다른 글
[SQLD] 데이터 모델과 성능 - Ⅰ성능 데이터 모델링의 정의 (0) | 2022.03.18 |
---|---|
[SQLD] 데이터 모델링의 이해 - Ⅴ 식별자 (identifier) (0) | 2022.03.18 |
[SQLD] 데이터 모델링의 이해 - Ⅲ 속성 (Attribute) (0) | 2022.03.13 |
[SQLD] 데이터 모델링의 이해 - Ⅱ엔터티(Entity) (0) | 2022.03.13 |
[SQLD] 데이터 모델링의 이해 -Ⅰ데이터 모델의 이해 (0) | 2022.03.13 |