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

正答2
解説
正解は2です。 図の上段は、項目aとbの組(主キー)から項目c、d、e、fへ矢印が伸び、さらにbだけからもfへ矢印が伸びている関数従属を示しています。 fは主キーの一部であるbだけで決まるので、部分関数従属があります。 第2正規形にするには、この部分関数従属を別の表に分けます。 【正規化の手順】 (a,b)全体で決まるc、d、eは、主キー(a,b)とともに一つの表に残します。 bだけで決まるfは、bを主キーとする別の表(b,f)に分けます。 分けた後の各表には推移的関数従属がないので、これで第3正規形になっています。 【選択肢別解説】 1:× 選択肢1(図のア)は(a,b)、(c,d,e)、(b,f)の3表です。 表(c,d,e)には主キーがなく、どのa、bの組のデータか分からなくなるため誤りです。 2:○ 選択肢2(図のイ)は(a,b,c,d,e)と(b,f)の2表で、部分関数従属を取り除いた第3正規形と一致します。 3:× 選択肢3(図のウ)は表(a,b,f)にfが残っており、部分関数従属が解消されていません。 表(c,d,e)にも主キーがありません。 4:× 選択肢4(図のエ)は(a,c,d,e)、(b,c,d,e)、(b,f)の3表です。 c、d、eはaとbの組で決まるので、aの表とbの表に分けると、どのaとbの組に対応する値か分からなくなり元の表を復元できません。 【ポイント】 第2正規形は部分関数従属の排除、第3正規形は推移的関数従属の排除です。 正規化では、分解した表を結合して元の表に戻せることも確認しましょう。まとめて解く
修了試験 2013-06-23実施分を通しで解く(80問)→