Concept
-
어떤 테이블 R에서 X와 Y를 각각 R의 속성 집합의 부분 집합이라 하자.
-
속성 X의 값 각각에 대해
시간에 관계없이 항상 속성 Y의 값이 오직 하나만 연관되어 있을 때
Y는 X에 함수적 종속 또는 X가 Y를 함수적으로 결정한다고 하고
X -> Y로 표기한다.
- 수강 테이블에서 이름, 학년, 학과는 각각 학번 속성에 함수적 종속이다.
학번 --> 이름
학번 --> 학년
학번 --> 학과
=> 학번 --> 이름, 학년, 학과
-
X -> Y의 관계를 갖는 속성 X와 Y에서
X를 결정자(Determinant) / Y를 종속자(Dependent)라고 한다.
함수적 종속 다이어그램
학번, 과목번호 --> 성적
학번 --> 학년
-
수강 테이블의 속성 중 성적은 (학번, 과목번호)에 완전 함수적 종속이라 한다.
-
수강 테이블의 속성 중 학년은 (학번, 과목번호)에 완전 함수적 종속이 아니므로 부분 함수적 종속이라 한다.
완전 & 부분 함수적 종속의 이해
-
완전 함수적 종속이라는 말은 어떤 속성이 기본키에 대해 완전히 종속적 일 때를 말한다.
-
부분 함수적 종속이라는 말은 기본키가 2개 이상 구성된 합성키이고
합성키를 구성하는 하나의 속성에 함수적 종속성을 갖을 때 부분 함수적 종속이라 한다.
예를 들어 수강 테이블은 (학번, 과목번호)가 기본키 인데
성적은 학번과 과목번호가 같을 경우에는 항상 같은 성적이므로
즉 성적은 학번과 과목번호에 의해서만 결정되기 때문에 성적은 기본키(학번, 과목번호)에 완전 함수적 종속이다.
반면 학년은 과목번호에 관계없이 학번이 같으면 항상 같은 학년이므로
즉 기본키의 일부인 학번에 의해서 학년이 결정되기 때문에 학년은 부분 함수적 종속이다.