修了試験 2024-07-28実施分 基本情報技術者試験 問19
“発注伝票”表を第3正規形に書き換えたものはどれか。 ここで,下線部は主キーを表す。 発注伝票(_注文番号_,_商品番号_,商品名,注文数量)
正答3
解説
正解は3です。 関係データベースの正規化を問う問題です。 “発注伝票”表の主キーは、注文番号と商品番号の組です。 商品名は商品番号だけで決まり、注文数量は注文番号と商品番号の組で決まります。 商品名が主キーの一部に従属する部分関数従属があるため、この表は第2正規形を満たしていません。 【選択肢別解説】 1:× 発注表に商品番号がないため、どの商品をいくつ注文したかが分からなくなります。 注文数量は注文番号だけでは決まらないので、正しい分解ではありません。 2:× 発注表に商品番号がないため、注文数量が注文番号だけでは決まりません。 また、商品表に注文番号を含めると、同じ商品名が注文ごとに重複して記録されます。 3:○ 正しい分解です。 発注表では注文数量が主キー全体に、商品表では商品名が主キーの商品番号に従属します。 部分関数従属も推移的関数従属もないので、第3正規形を満たします。 4:× 商品表に注文数量を含めている点が誤りです。 注文数量は注文番号と商品番号の組で決まるため、商品番号だけを主キーとする商品表には置けません。 【ポイント】 第2正規形は部分関数従属の排除、第3正規形は推移的関数従属の排除です。 分解後も、共通の列(ここでは商品番号)で結合すれば元の表を復元できる必要があります。まとめて解く
修了試験 2024-07-28実施分を通しで解く(60問)→