IPA過去問ドリル

平成27年度 春期 データベーススペシャリスト試験 午前Ⅱ 問6

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

受注入力システムによって作成される次の表に関する記述のうち,適切なものはどれか。受注番号は受注ごとに新たに発行される番号であり,項番は1回の受注で商品コード別に連番で発行される番号である。なお,単価は商品コードによって一意に定まる。 受注日,受注番号,得意先コード,項番,商品コード,数量,単価 2015-03-05,995867,0256,1,20121,20,20000 2015-03-05,995867,0256,2,24005,10,15000 2015-03-05,995867,0256,3,28007,5,5000 (注:本サイトでは原問題の表を文字表記に変換しています)

出典:平成27年度 春期 データベーススペシャリスト試験 午前Ⅱ 問6

正解:イ

解説

この表は,各セルの値が単一(繰返し項目や複数の値をもつ属性がない)であるため,少なくとも第1正規形の条件は満たしている。しかし,この表の主キーは{受注番号,項番}であるのに対し,受注日と得意先コードは受注番号だけで(キーの一部だけで)値が定まる部分関数従属の関係にある。第2正規形は,主キーの真部分集合に対する部分関数従属が存在しないことを要求するため,この部分関数従属が存在する時点で第2正規形の条件を満たしておらず,正規化は第1正規形までにとどまっている。

選択肢ごとの解説

  • 誤り。各列の値はいずれも単一の値であり,繰返し項目も存在しないため,少なくとも第1正規形の条件は満たしている。正規化が全く行われていないとはいえない。
  • 正しい。主キーを{受注番号,項番}とすると,受注日と得意先コードは受注番号だけに従属する部分関数従属があるため第2正規形の条件を満たさない。各セルの値は単一であるため,正規化は第1正規形までにとどまる。
  • 誤り。受注日と得意先コードが,主キー{受注番号,項番}の一部である受注番号だけに従属する部分関数従属が存在するため,第2正規形の条件を満たしていない。
  • 誤り。第2正規形の条件を満たしていない時点で,それより厳しい条件である第3正規形まで正規化されているとはいえない。
データベーススペシャリストの過去問を演習モードで解く