본문 바로가기
SQLD

SQL 이론 - 1과목 1장 (4)

by Poorm 푸름 2023. 6. 16.

1. 관계의 개념

 

- 엔터티의 인스턴스 사이에 연관성


2. 관계의 분류

 

- 존재에 의한 관계

- 행위에 의한 관계


3. UML(Unified Modeling Language)

 

- 연관관계 : 항상 이용하는 관계

                 : 존재적 관계에 해당

                 : 실선으로 표현

 

- 의존관계 : 행위에 의해 관계가 형성될 때 구분하여 표현

                 : 점선으로 표현

 

* ERD는 존재적 관계 VS 행위에 의한 관계 구분X

  UML은 연관관계 VS 의존관계 구분O (점선,실선)

 

 

4. 관계의 표기법

 

- 관계명(Membership) : 관계의 이름

- 관계차수(Cardinality) : 1:1, 1:M, M:N

- 관계선택사양(Optionality) : 필수관계, 선택관계

 

- 관계명 명명규칙

: 구체적이지 않은 애매한 동사를 피한다

: 현재형으로 표현

 

- 관계 차수

: 두 개의 엔터티간 관계에서 참여자의 수를 표현

: 한 개가 참여하는 경우는 실선, 다수가 참여한 경우는 까마귀 발과 같은 모양

 

 

 

: 1:1 관계

 

 

 

 

 

: 1:M 관계

 

 

 

 

 

 

: M:M 관계

 

 

 

- 관계선택사양

 

1. 필수관계

: 모든 참여자가 반드시 관계를 가짐

: 1) 지하철운행과 지하철문의 관계

: 2) 반드시 지하철 문이 닫혀야 지하철 출발

 

2. 선택관계

: 1) 지하철 안내방송시스템

: 2) 안내방송은 지하철의 출발과 상관없음

: 물리속성에서 Foreign Key (FK)로 연결될 경우 (Null 허용)

 

* 선택참여는 엔터티 쪽을 원으로 표시, 필수참여는 아무런 표시를 하지 않는다

 

(참고)

 

1:M 관계는 1의 엔터티의 속성을 M의 엔터티에 복사한다

 

) 학번 : 학생 = 1 : M 이라면 아래와 같이 학번 엔터티의 식별자를 학생 엔터티 식별자에 복사


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

 

- 관계 체크사항

: 엔터티 사이에 연관규칙 존재?

: 엔터티 사이에 정보 조합이 발생?

: 업무기술서, 장표 관계연결에 대한 규칙 서술?

: 업무기술서, 장표 관계연결하는 동사 존재?

 

- 관계 읽기

: 기준 엔터티를 1개 또는 각으로 읽는다

: 대상 엔터티의 관계참여도를 읽는다

: 관계선택사양과 관계명을 읽는다

 

** 읽는법 중요 **

 

- 관계선에 원 있으면 선택참여

- 부서가 여러 사원 소속해도 ok 안해도 ok

- 부서를 기준으로 한 부서에 여러 사원 소속됨

- 반대로 한 사원은 한 부서에 포함됨

- 선택참여라 부모에 값이 있다고 자식까지 값이 있을 필요는 없으나 반대로 자식에 값이 있음

  (부모에는 무조건 데이터값이 있어야해)

 

**참고사이트**
 

https://dataonair.or.kr/db-tech-reference/d-guide/sql/?pageid=5&mod=document&uid=328

'SQLD' 카테고리의 다른 글

SQL 이론 - 1과목 2장 (1)  (0) 2023.06.16
SQL 이론 - 1과목 1장 (5)  (1) 2023.06.16
SQL 이론 - 1과목 1장 (3)  (0) 2023.06.16
SQL 이론 - 1과목 1장 (2)  (0) 2023.06.16
SQL 이론 - 1과목 1장 (1)  (0) 2023.06.16