必ず受かる情報処理技術者試験

問題29

ポケットスタディ 基本情報午後・要点整理―即効!7つの知識 (情報処理技術者試験)

次の "受注台帳" 表と "顧客" 表に分解し、第3正規形にしたとき、両方に必要な属性はどれか。ここで、送付先と支払方法は注文ごとに決めるものとする。また、表の下線は主キーを表す。

受注台帳 (注文番号, 注文年月日, 顧客ID, 顧客名, 顧客住所, 品目, 数量,
       送付先, 支払方法, 受注金額)

顧客ID
顧客名
支払方法
注文番号

解答・解説を見る

解答:ア

正規化とは、データの重複をなくすことにより,データの管理を容易にしたり,データを多様な目的に用いるのに有効な方法。通常、正規化は第1正規形~第3正規形の3段階で行う。

第1正規化
繰り返し部分を別レコードとして分離し固定長レコードにする。
第2正規化
レコードの主キーに完全従属する属性と、主キーの一部分にのみ部分従属する属性を別のレコードとして分離させる。
第3正規化
主キー以外の属性に従属する属性を別レコードに分割する。

 

  1. 与えられたデータには反復部分がないので、第1正規形を満たしている。
  2. 主キーが1つしかないので部分関数従属にはならず、第2正規形である。
  3. 顧客IDが決まると決まる属性だけを取り出して顧客表を作成する。
    顧客(顧客ID,顧客名,顧客住所)
  4. 残った属性で注文票を作成する。
    注文(注文番号,注文年月日,顧客ID,品目,数量,送付先,支払方法,受注金額)
  5. 二つの表に共通する項目(二つの表を結合するためのキー)は顧客IDである。
前の問題 次の問題

Copyrithg naruha