본문 바로가기

데이터베이스/SQLD 공부

[SQLD] 데이터 모델링 - 관계

반응형
관계란?
  • (사전적의미) 상호 연관성이 있는 상태
  • 엔터티의 인스턴스 사이의 논리적인 연관성으로 존재의 형태로서나 행위로서 서로에게 연관성이 부여된 상태

 

관계의 패어링

각각의 엔터티의 인스턴스들은 자신이 관련된 인스턴스들과 관계의 어커런스로 참여하는 형태 

 

 

  • 인스턴스 각각은 자신의 연관성을 가지고 있을 수 있다.
  • 이것을 집합하여 '강의' 라는 관계를 도출한다.

 

관계의 분류
  • 존재에 의한 관계
    예) 사원은 부서에 항상 속해있다.
  • 행위에 의한 관계
    예) 주문은 고객이 주문을 할 때 발생된다. 

 

관계의 표기법

관계명 (Membership)

  • 관계의 이름으로, 엔터티가 관계에 참여하는 형태를 지칭한다.
  • 각각의 관계는 두 개의 관계명을 가진다.

관계차수 (Cardinality)

  • 튜플의 개수를 의미  (애트리뷰트의 개수는 차수(Degree)를 의미)
  • 1:1, 1:M, M:N

관계선택사양 (Optionality)

  • 필수관계, 선택 관계
  • 하나의 주문목록에는 한 개의 목록을 항상 포함하고, 한 목록은 여러 개의 주문 목록에 의해 포함 될 수 있다.

 

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

 

관계의 정의 - 관계 읽기
  • 기준 엔터티를 한 개 또는 각으로 읽는다.
  • 대상 엔터티의 관계참여도 즉 개수를 읽는다.
  • 관계선택사양과 관계명을 읽는다.

 

 

 

 

 

 

참조 - 한국데이터진흥원(2019). SQL 전문가 가이드 2013 Edition. 서울: 한국데이터진흥원.

반응형