정규형 판별 포인트
복합 기본키의 일부만으로 정해지는 속성이 있으면 2NF가 아니다
이 예제에서는 교수명이 학생과 무관하게 과목코드만 따라가므로 원본 테이블에 그대로 두면 부분 함수 종속이 남습니다.
문제를 만드는 종속
과목코드 → 교수명
복합 PK {학번, 과목코드} 전체가 아니라 일부 키만 보고 결정되므로 2NF 조건을 통과하지 못합니다.
1
원본 테이블 R
학번 과목코드 교수명 학점
PK: {학번, 과목코드}
{학번, 과목코드} → 학점 과목코드 → 교수명
2
정규형 판별
1NF 통과
각 칸이 원자값이면 1NF 조건은 만족합니다.
2NF 실패
비주요 속성 교수명이 복합키 전체가 아니라 과목코드에만 종속됩니다.
현재 정규형: 1NF
이유: 부분 함수 종속이 남아 있음
3
2NF로 분해
학생이 과목을 듣는 정보와, 과목 자체의 정보를 분리하면 부분 함수 종속이 사라집니다.
수강 테이블

수강

(학번, 과목코드, 학점)
과목 테이블

과목

(과목코드, 교수명)