IPA過去問ドリル

平成22年度 春期 基本情報技術者試験 午前 問30

テクノロジ/データベース

“発注伝票”表を第3正規形に書き換えたものはどれか。ここで,下線部は主キーを表す。 発注伝票(注文番号,商品番号,商品名,注文数量)

出典:平成22年度 春期 基本情報技術者試験 午前 問30

正解:ウ

解説

元の“発注伝票”表では,注文数量が(注文番号,商品番号)に,商品名が商品番号だけに関数従属しており,部分関数従属が存在するため第3正規形になっていません。正規化すると,注文番号と商品番号の組を主キーとし注文数量をもつ“発注”表と,商品番号を主キーとし商品名をもつ“商品”表に分割されます。

選択肢ごとの解説

  • 誤り。発注表の主キーが注文番号だけになっており,商品番号が抜け落ちているため,どの商品を何個注文したかが表現できません。
  • 誤り。商品表に注文番号まで含まれており,商品名が注文番号にも従属しているかのような構造になっていて,正規化として不適切です。
  • 正しい。発注(注文番号,商品番号,注文数量)と商品(商品番号,商品名)に分割することで,部分関数従属が解消され第3正規形になります。
  • 誤り。商品表に注文数量が含まれており,注文数量は商品番号だけでなく注文にも依存する値なので,商品表に置くのは不適切です。
基本情報技術者の過去問を演習モードで解く