Learning
토픽 12 / 201·데이터베이스 기초 및 모델링

관계 (Relationship)

관계 (Relationship)

엔터티 간에 존재하는 업무적 연관성으로, 두 개 이상의 엔터티 타입 사이의 논리적 연결을 의미하며 외래키(FK)로 구현됨

특징

  • 관계명(Membership): 관계의 이름, 동사형으로 표현
  • 차수/카디널리티(Cardinality): 관계에 참여하는 수
  • 선택성/참여도(Optionality): 필수(Mandatory) 또는 선택(Optional)

구성요소

  • 관계명: 엔터티 간 행위/상태를 명명 (예: "주문한다")
  • 관계 차수: 1:1, 1:N, M:N
  • 관계 선택성: 필수 참여(|), 선택 참여(○)
  • 관계 방향: 양방향으로 해석

관계 차수(Cardinality)

  • 1:1(One-to-One): 양쪽 모두 하나의 인스턴스와 관계
  • 1:N(One-to-Many): 한쪽 하나, 다른 쪽 다수
  • M:N(Many-to-Many): 양쪽 모두 다수 (교차 엔터티로 해소 필요)

관계 유형

  • 식별 관계(Identifying): 부모 PK가 자식 PK에 포함, 실선 표기
  • 비식별 관계(Non-Identifying): 부모 PK가 자식 일반 속성으로 FK, 점선 표기

적용사례: 고객-주문(1:N), 주문-상품(M:N→교차엔터티), 부서-직원(1:N)

비교: 식별관계(강한결합/PK포함) vs 비식별관계(약한결합/FK만)

연관: ERD, 카디널리티, 참조무결성, 외래키