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

正答2
解説
正解は2です。 この問題は、部分関数従属をもつレコードを第3正規形にする方法を問うています。 図では、主キーである項目aとbの組から、c、d、e、fのそれぞれへ矢印が出ています。 さらに、図の下側には、bだけからfへ向かう矢印があります。 fは主キーの一部であるbだけで決まるので、部分関数従属です。 部分関数従属を取り除くと第2正規形になり、推移的関数従属もなければ第3正規形です。 【選択肢別解説】 1:× 選択肢1(図のア)は、(a,b)、(c,d,e)、(b,f)の3表に分けています。 (c,d,e)の表にはaやbがないので、c、d、eがどのaとbの組に対応するかが分からなくなります。 元のレコードを復元できないので、正しい分解ではありません。 2:○ 選択肢2(図のイ)は、(a,b,c,d,e)と(b,f)の2表に分けています。 fをbとともに別の表へ移したので、部分関数従属が解消されています。 c、d、eは主キーのaとbの組全体に従属し、図には非キー項目どうしの従属もないので、第3正規形です。 共通の項目bで結合すれば、元のレコードを復元できます。 3:× 選択肢3(図のウ)は、(a,b,f)、(c,d,e)、(b,f)の3表です。 (a,b,f)の表には、fがbだけに従属する部分関数従属が残っており、第2正規形にもなっていません。 (c,d,e)の表も主キーとの対応が失われています。 4:× 選択肢4(図のエ)は、(a,c,d,e)、(b,c,d,e)、(b,f)の3表です。 c、d、eはaとbの組で決まるので、aだけやbだけと組にしても関係を正しく表せません。 主キーを分割したことで、元のレコードを正しく復元できなくなります。 【ポイント】 第2正規形は部分関数従属の除去、第3正規形は推移的関数従属の除去です。 分割後の表を結合して元のレコードに戻せること(無損失分解)も確認しましょう。まとめて解く
修了試験 2026-01-25実施分を通しで解く(60問)→