平成29年度 春期 午前Ⅱ 問7
データベース設計
第3正規形でない表
第2正規形であるが第3正規形でない表はどれか。ここで,講義名に対して担当教員は一意に決まり,所属コードに対して勤務地は一意に決まるものとする。また,{ }は繰返し項目を表し,実線の下線は主キーを表す。
選択肢は原典では各肢が1件の行をもつ表(列名:値の形でたたんだ。原典の実線の下線は …、破線の下線は〔破線の下線〕で表した)。
- ア学生番号:2122 / 講義名:経済学 / 担当教員:山田教授 / 成績:優
- イ社員番号:71235 / 氏名:山田 太郎 / 入社年月日:2001-04-01 / 電話番号:03-1234-5678
- ウ社員番号:15547 / 氏名:小林 明 / 所属コード:75T / 勤務地:東京
- エ社員番号:71234 / 身長:170 / 体重:62 / 趣味:{テニス,ゴルフ}
答えと解説を見る
✓ これが正解ウ社員番号:15547 / 氏名:小林 明 / 所属コード:75T / 勤務地:東京
解説
所属コードを介して勤務地が決まる推移的関数従属が残る表です。
見分ける軸は、部分関数従属と推移的関数従属のどちらが残っているかです。第2正規形は、非キー属性が主キーの一部だけに従属する部分関数従属がない状態で、第3正規形はさらに、非キー属性が別の非キー属性を経由して主キーに従属する推移的関数従属もない状態です。社員番号・氏名・所属コード・勤務地の表は、主キーが社員番号の1列なので部分関数従属は起こらず、第2正規形です。しかし、社員番号から所属コードが決まり、所属コードから勤務地が決まるので、勤務地は社員番号に推移的に従属しています。そのため第3正規形ではありません。主キーが1列なら部分従属は無い、と先に確かめると早く絞れます。
ほかの選択肢はなぜ違うのか
- ア学生番号:2122 / 講義名:経済学 …:主キーは学生番号と講義名の組ですが、担当教員は講義名だけで決まります。主キーの一部に従属する部分関数従属があるので、この表は第2正規形にもなっていません。
- イ社員番号:71235 / 氏名:山田 太…:主キーは社員番号の1列で、氏名・入社年月日・電話番号はどれも社員番号から直接決まります。非キー属性どうしの従属は示されておらず、第3正規形まで満たしている表です。
- エ社員番号:71234 / 身長:170 …:趣味の列にテニスとゴルフという繰返し項目が入っています。一つの欄に複数の値を持つので、第1正規形の条件をまだ満たしておらず、第2正規形でもありません。
出典:平成29年度 春期 データベーススペシャリスト試験 午前Ⅱ 問7
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)