본문 바로가기
Database

함수적 종속(Functional Dependency)

by BTC_Haksung 2022. 5. 30.
  • 어떤 릴레이션 R에서 X와 Y를 각각 R의 애트리뷰트의 부분 집합이라고 할 때 X의 값 각각에 대해 Y의 값이 오직 하나만 연관되어 있을 때 Y는 X에 함수적 종속이라고한다
  • 표현식 X -> Y

완전 함수적 종속

종속자가 기본키에만 종속되며, 기본키가 여러 속성으로 구성되어 있을경우 기본키를 구성하는 모든 속성이 포함된 기본키의 부분집합에 종속된 경우

학번 이름 학부
1 햄토리 쳇바퀴부
2 다람쥐 도토리수집부
3 청설모 바보공학부

학번에 이름과 학부가 종속되어 있음

결정자 : 학번

종속자 : 이름, 학부

종속관계 : 학번 -> 이름, 학부

 

부분 함수적 종속

릴레이션에서 종속자가 기본키가 아닌 다른 속성에 종속되거나, 기본키가 여러 속성으로 구성되어 있을경우 기본키를 구성하는 속성 중 일부만 종속된 경우

햄스터ID 물품코드 상품 수량 가격
HAMSTER01 DARAM007 쳇바퀴 1 5,000
HAMSTER02 DARAM009 도토리 4 500
HAMSTER03 DARAM002 리어카 1 100,000

결정자 : 햄스터ID, 물품코드

종속자 : 상품, 수량, 결제가

종속관계 :

햄스터ID, 물품코드 -> 수량

물품코드 -> 상품

햄스터ID, 물품코드, 수량 -> 가격

 

 

이행적 함수 종속

릴레이션에서 X, Y, Z라는 3 개의 속성이 있을 때 X→Y, Y→Z 이란 종속 관계가 있을 경우, X→Z가 성립될 때 이행적 함수 종속이라고 합니다. 즉, X를 알면 Y를 알고 그를 통해 Z를 알 수 있는 경우

 

이러한 논리적 관계들은 불완전하기 때문에 정규화 과정을 거쳐 데이터베이스를 효율적으로 만들어야한다.

 

'Database' 카테고리의 다른 글

[24/365] Oracle DB 물리적 구조  (0) 2022.06.07
[24/365] 쿼리 Select & Update 과정(2)  (0) 2022.06.03
[24/365] 쿼리 Select & Update 과정(1)  (0) 2022.05.23
이상 현상(Anomaly)이란?  (0) 2022.05.13
[24/365] LRU 알고리즘이란...?  (0) 2022.05.13

댓글