BCNF 판정 포인트

후보키에서 나온 종속은 괜찮지만,
교수 → 과목의 결정자는 후보키가 아닙니다.

같은 수업 배정 테이블 안에서도 어떤 함수 종속은 BCNF를 만족하고, 어떤 종속은 바로 위반 지점이 됩니다.

BCNF 규칙
모든 함수 종속에서 결정자는 후보키(또는 슈퍼키)여야 합니다.

수업 배정 테이블과 제약

후보키 {학번, 과목} 후보키 {학번, 교수}
학번 과목 교수
1001 DB 이교수
1002 DB 이교수
1001 OS 최교수
1003 DB 박교수
  • 학생은 같은 과목을 중복 수강할 수 없습니다.
  • 교수 한 명은 한 과목만 담당합니다.
  • 같은 과목은 여러 교수가 맡을 수 있습니다.

함수 종속을 같은 축에서 비교

종속 왜 가능한가 BCNF 판단
{학번, 과목} → 교수 결정자가 후보키이므로 한 튜플을 식별할 수 있습니다. 만족
{학번, 교수} → 과목 이 결정자도 후보키라서 BCNF 조건을 통과합니다. 만족
교수 → 과목 교수는 한 과목만 맡지만, 교수만으로는 후보키가 아닙니다. 위반
핵심: 3NF는 비주요 속성 사이의 종속을 주로 막지만, BCNF는 더 엄격합니다. 이 사례에서는 교수 → 과목이 주요 속성 일부를 결정하므로 3NF일 수 있어도 BCNF는 아닙니다.