다치 종속

IT위키
이수민 (토론 | 기여)님의 2020년 4월 13일 (월) 00:19 판


Multivalued Dependency

어떠한 조건을 만족하는 투플이 릴레이션 안에 있을 것을 요구하는 일종의 제약 조건

표현

다치 종속은 머리가 두 개인 이중 화살표(double arrow) ->> 로 표현

  • A ->> B일 때 A가 B를 다치 결정한다고 말하고, B가 A에 다치 종속된다고 말한다.

다치 종속의 예시

학생 수강과목 동호회
홍길동 수학

물리학

영어

스키반

서도회

임꺽정 물리학

화학

영어회화반

유도회

  • 위와 같은 비정규 테이블을 1정규화 하면 아래와 같다.
학생 수강과목 동호회
홍길동 수학 스키반
홍길동 수학 서도회
홍길동 물리학 스키반
홍길동 물리학 서도회
홍길동 영어 스키반
홍길동 영어 서도회
임꺽정 물리학 영어회화반
임꺽정 물리학 유도회
임꺽정 화학 영어회화반
임꺽정 화학 유도회
  • 정규화된 테이블은 모든 애트리뷰트로 구성되는 합성키(학생, 수강과목, 동호회)를 가지며, 다른 함수적 종속성이 존재하지 않으므로 BCNF에 해당
  • 그러나, 수강과목과 동호회는 연관성이 없는 관계로 데이터의 심각한 중복성 발생
    • 홍길동이 새로운 동호회에 가입하려면 레코드를 3개나 삽입 필요(삽입 이상)
  • 이러한 경우를, 학생이 수강과목과 동호회를 다치 결정한다고 말할 수 있음
    • 학생 -->> 수강과목 | 동호회

다치 종속의 제거

  • 다치 종속성을 제거하는 정규형을 제4정규형이라고 함(BCNF는 만족하는 경우)