修了試験 2023-07-23実施分 基本情報技術者試験 問19
“従業員”表を第3正規形にしたものはどれか。 ここで,下線部は主キーを表す。 従業員(従業員番号,従業員氏名,{技能コード,技能名,技能経験年数}) ({ } は繰返しを表す)

正答3
解説
正解は3です。 繰返し項目を含む表を、第3正規形まで正規化した結果を選ぶ問題です。 元の表では、従業員番号で従業員氏名が決まり、技能コードで技能名が決まります。 技能経験年数は、従業員番号と技能コードの組合せで初めて決まります。 第3正規形では、すべての非キー属性が主キー全体に従属し、主キー以外の属性に従属しない状態にします。 【選択肢別解説】 1:× 選択肢1(図のア)は、従業員番号を主キーとする表と、技能コードを主キーとする表の2つです。 技能経験年数は従業員ごと・技能ごとに異なる値なのに、技能コードだけで決まる表に入れているため、どの従業員の経験年数かを表せません。 2:× 選択肢2(図のイ)は、従業員番号と技能コードを主キーとする表に、従業員氏名が残っています。 従業員氏名は主キーの一部である従業員番号だけで決まる部分関数従属なので、第2正規形の条件を満たしません。 3:○ 選択肢3(図のウ)は、技能経験年数を従業員番号と技能コードを主キーとする表に置いています。 従業員氏名は従業員番号を主キーとする表に、技能名は技能コードを主キーとする表に分かれており、部分関数従属も推移的関数従属もないので第3正規形です。 4:× 選択肢4(図のエ)は、技能経験年数を従業員番号だけを主キーとする表に入れています。 技能経験年数は技能ごとに異なるので、1人の従業員が複数の技能をもつと、それぞれの経験年数を記録できません。 【ポイント】 第1正規形は繰返しの排除、第2正規形は部分関数従属の排除、第3正規形は推移的関数従属の排除です。 属性ごとに「何が決まれば値が1つに決まるか」を確認すると、正しい分割が見えてきます。まとめて解く
修了試験 2023-07-23実施分を通しで解く(60問)→