SQLD 학습 1-4 관계

제우민·2022년 8월 8일
0
post-thumbnail

관계의 정의

  • 사전적으로 정의하면 상호연관성이 있는 상태이다.

  • 엔터티 간 논리적인 연관성을 의미한다.

  • 존재에 의한 관계와 행위에 의한 관계로 구분된다.

관계의 페어링

  • 각각의 엔터티의 인스턴스들은 자신이 관련된 인스턴스들과 관계의 어커런스로 참여하는 형태를 관계 페어링이라 한다.

관계의 분류

  • 존재에 의한 관계
    ex) 소속된다

  • 행위에 의한 관계
    ex) 주문한다

관계의 표기법 (관계명)

  • 엔터티가 관계에 참여하는 형태를 지칭한다.

  • 각각의 관계는 두 개의 관계명을 가질 수 있다. 즉 각각의 관계명에 의해 두 가지의 관점으로 표현될 수 있다. (능동적,수동적)

관계의 명명 규칙

  • 애매한 동사를 피한다.

  • 현재형으로 표현한다.

관계의 표기법(관계차수)

  • 두 개의 엔터티 간 관계에서 참여자의 수를 표현하는 것을 관계차수라고 한다.

  • 1:1, 1:M, M:M

관계의 표기법(관계선택사양)

  • "반드시 지하철의 문이 닫혀야만 지하철은 출발한다"

  • 지하철 출발과 지하철 문닫힘은 필수적으로 연결관계가 있는 것이다. 이와 같은 데이터 모델의 관계에서는 필수참여 관계가 된다

  • 지하철의 출발을 알리는 안내방송은 지하철의 출발과 상관없이 방송해도 아무런 문제가 발생하지 않는다. 즉 안내방송시스템이 고장이 나도 지하철 운행에는 별로 영향을 주지 않는다.

  • 지하철의 출발과 지하철방송과는 정보로서 관련은 있지만 서로가 필수적인 관계는 아닌 선택적인 관계가 되는 것이다. 이와같은 것이 데이터 모델 관계에서는 선택참여관계가 된다.

관계 읽기

  • 기준 엔터티를 한개또는 각(Each)으로 읽는다.

  • 대상 엔터티의 관계 참여도 즉 개수를 읽는다.

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

ex)
각각의/하나의 기준엔터티 관계차수 대상엔터티 필수/선택 관계명
각각의 고객은 여러 개의 주문을 때때로 주문한다
각각의 주문은 하나의 고객을 반드시 가진다

profile
Work hard

0개의 댓글