修了試験 2012-01-22実施分 基本情報技術者試験 問30
項目a〜fからなるレコードがある。 このレコードの主キーは,項目aとbを組み合わせたものである。 また,項目fは項目bによって特定できる。 このレコードを第3正規形にしたものはどれか。

正答2
解説
正解は2です。 図では、項目aとbの組(主キー)から項目c、d、e、fへ矢印が出ており、aとbで残りの項目が決まることを示しています。 さらに、項目bだけからfへの矢印もあり、fはbだけで決まります。 主キーの一部だけで決まる項目があるので、これは部分関数従属です。 【正規化の手順】 第2正規形では、部分関数従属を取り除くため、bとfを別のレコード[b|f]に分けます。 残りは[a|b|c|d|e]で、c、d、eは主キー(a, b)全体で決まります。 c、d、eの間には、主キー以外の項目に従属する推移的関数従属がありません。 したがって、この2つのレコードの時点で第3正規形を満たしています。 【選択肢別解説】 1:× 選択肢1(図のア)は[a|b]と[c|d|e]を分けています。 [c|d|e]には主キーがなく、どのa、bの組のデータか分からなくなります。 2:○ 選択肢2(図のイ)は[a|b|c|d|e]と[b|f]です。 部分関数従属が解消され、推移的関数従属もないので第3正規形です。 3:× 選択肢3(図のウ)は[a|b|f]にfが残っています。 fはbだけで決まるので部分関数従属が残り、[c|d|e]も主キーを失っています。 4:× 選択肢4(図のエ)は[a|c|d|e]と[b|c|d|e]に分けています。 c、d、eはaとbの両方がそろって初めて決まるので、どちらの表でも正しく特定できません。 【ポイント】 第1正規形は繰返し項目の排除、第2正規形は部分関数従属の排除、第3正規形は推移的関数従属の排除です。 正規化で分けた表は、結合したときに元の情報を失わないことが条件です。まとめて解く
修了試験 2012-01-22実施分を通しで解く(80問)→