모두CBT

24-1아래 [수강신청] 릴레이션을 [학생튜터]와 [튜터과목] 두 릴레… | 2024년 정보처리기사실기 1회차 기출문제 상세 페이지

14

24-1

아래 [수강신청] 릴레이션을 [학생튜터]와 [튜터과목] 두 릴레이션으로 분해하였다. [수강신청]에서 한 학생은 과목마다 튜터 한 명을 배정받고, 튜터 한 명은 한 과목만 맡는다. 분해하기 전 [수강신청] 릴레이션이 만족하는 가장 높은 정규형을 적으시오.

[수강신청]

학번과목튜터번호
h11파이썬T7
h12자바T8
h13파이썬T7
h13자바T5
h14파이썬T9
h14자바T5

[학생튜터]

학번튜터번호
h11T7
h12T8
h13T7
h13T5
h14T9
h14T5

[튜터과목]

튜터번호과목
T5자바
T7파이썬
T8자바
T9파이썬
해설

제3정규형(3NF)


[해설]

제3정규형(3NF)은 모든 함수 종속 X → Y에서 X가 슈퍼키이거나 Y가 주요 속성(후보키에 속한 속성)이면 만족하고, BCNF는 X가 반드시 슈퍼키여야 한다.

[수강신청]의 함수 종속은 (학번, 과목) → 튜터번호와 튜터번호 → 과목이고, 후보키는 (학번, 과목)과 (학번, 튜터번호)다.

튜터번호 → 과목은 튜터번호가 슈퍼키가 아니라서 BCNF를 어기지만, 결정되는 과목이 주요 속성이라 3NF는 만족한다.

그래서 튜터번호를 결정자로 떼어 낸 분해로 BCNF를 얻는다.

내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.