제 4절 관계

연쇄코딩마·2022년 9월 13일
0

가. 관계의 개념

  • 관계 : 인스턴스 사이의 논리적 연관성으로서 존재 또는 행위로서 서로에게 연관성이 부여된 상태
    예를들어 선생과 학생사이에 가르친다는 관계가 있다.

나. 관계의 페어링

  • 페어링(pairing) : 각각의 엔터티의 인스턴스들이 자신이 관련된 인스턴스들과 관계의 어커런스로 참여하는 형태

  • 엔티티 어커런스(Occurrence) : 정의된 레코드의 구조에 따라 데이터베이스에 구체적이고 실제적인 정보를 저장하고 있는 데이터 레코드, RDBMS에서는 듀플을 의미한다. 쉽게 말에 각 엔티티의 인스턴스의 각각의 데이터를 뜻한다.

    엔터티는 인스턴스의 집합을 논리적으로 표현하였다면 관계는 관계 페어링의 집합을 논리적으로 표현한 것이다.

다. 관계의 분류

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

라. 관계의 표기법

관계명(Membership)

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

관계 차수(Cardinality)

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

  • 관계차수는 Crow’s Foot 모델을 통해 선을 이용하여 표현한다. 한 개가 참여하는 경우는 실선을 그대로 유지하고 다수가 참여한 경우는 까마귀발과 같은 모양으로 그려준다.

관계 선택사항(Optionality)

  • 엔터티가 관계에 항상 참여하는지 안하는지 나타내는 방법
  • 필수 참여(Mandatory Membership)와 선택참여(Optional Membership)로 나뉜다.

필수 참여 같은 경우 모든 참여자가 반드시 관계가 있는 타엔티티의 참여자와 연결 해야되는 관계다.
예를 들면 주문서는 반드시 주문 목록을 가져야 된다. 또 선택 참여 같은 경우 회원은 주문을 한 회원과 주문을 하지 않은 회원도 있기 때문에 선택 참여에 해당한다.

마. 관계의 읽기

  • 관계 체크 사항
    두개의 엔터티 사이에 관심 있는 연관 규칙이 존재하는가?
    두개의 엔터티 사이에 정보의 조합이 발생되는가?
    업무기술서, 장표에 관계연결에 대한 규칙이 서술되어 있는가?
    업무 기술서, 장표에 관계연결을 가능하게 하는 동사가 있는가?
  • 읽기 : 데이터 모델을 읽는 방법은 먼저 관계에 참여하는 엔티티를 각 또는 하나라고 읽고 대상 엔터티의 개수를 읽고 관계선택사양과 관계명을 읽도록 한다.

profile
只要功夫深,铁杵磨成针, 하고자 하면 쇠 막대기도 바늘로 만들 수 있다

0개의 댓글

관련 채용 정보