문제
다음 릴레이션에서 3NF 위반을 정확히 판단하는 기준으로 가장 적절한 것은?
릴레이션: 수강신청(학번, 과목코드, 교수번호, 교수명, 연구실) 함수종속: {학번, 과목코드} → 교수번호, 교수번호 → {교수명, 연구실}
① 기본키가 복합키로 구성되어 있으면서 부분 함수 종속이 존재 ② 2NF를 만족하지만 기본키가 아닌 속성을 통한 이행적 함수 종속이 존재 ③ 모든 비주요 속성이 기본키에 완전 함수 종속되어 있지 않은 상태 ④ 결정자가 후보키가 아닌 함수 종속 관계가 존재하는 상태
정답
2번
해설
주어진 릴레이션에서 {학번,과목코드} → 교수번호 → {교수명,연구실}의 이행적 함수 종속이 존재하여 3NF를 위반한다. 3NF는 2NF를 만족하면서 이행적 함수 종속을 제거해야 한다. ①은 2NF 위반, ③은 2NF 위반, ④는 BCNF 위반 조건이다.