6-3 データの正規化

令和6年度公開問題  問81

一つの表で管理されていた受注データを,受注に関する情報と商品に関する情報に分割して,正規化を行った上で関係データベースの表で管理する。正規化を行った結果の表の組合せとして,最も適切なものはどれか。ここで,同一商品で単価が異なるときは商品番号も異なるものとする。また,発注者名には同姓同名はいないものとする。

解答 エ

【頭の準備体操】
正規化は,データの重複や不整合が発生しないように,複数の表に分離する作業。

第1正規化は,繰返し項目を排除する。計算で求められる項目を削除する。
第2正規化は,主キーの一部の項目で一意に決まる項目を,別の表に分離する。
第3正規化は,主キー以外の項目で一意に決まる項目を,別の表に分離する。

第1正規化済み。
第2正規化済み。主キーは,受注番号。
第三正規化。主キー以外の項目,“商品番号”が決まれば“商品名”と“単価”が決まるので別の表に分離する。ただし,表間のリレーションは残しておくこと!

令和5年度公開問題  問59

関係データベースで管理された“会員管理”表を正規化して,“店舗”表,“会員種別”表及び“会員”表に分割した。“会員”表として,適切なものはどれか。ここで,表中の下線は主キーを表し,一人の会員が複数の店舗に登録した場合は,会員番号を店舗ごとに付与するものとする。

解答 エ

【頭の準備体操】
正規化は,データの重複や不整合が発生しないように,複数の表に分離する作業。

第1正規化は,繰返し項目を排除する。計算で求められる項目を削除する。
第2正規化は,主キーの一部の項目で一意に決まる項目を,別の表に分離する。
第3正規化は,主キー以外の項目で一意に決まる項目を,別の表に分離する。

第1正規化済み。
第2正規化。主キーの一部の項目,“店舗コード”が決まれば“店舗名”が決まるので別の表に分離する。ただし,表間のリレーションは残しておくこと!


第3正規化。主キー以外の項目,“会員種別コード”が決まれば“会員種別名”が決まるので別の表に分離する。ただし,表間のリレーションは残しておくこと!

令和2年度公開問題  問57

次に示す項目を使って関係データベースで管理する“社員”表を設計する。他の項目から導出できる,冗長な項目はどれか。

解答 イ

【頭の準備体操】
冗長は,余分や無駄なもののこと。
“現在の満年齢”は,“生年月日”と「コンピュータがもつ今日の日付」を使って計算で求まるので項目としてはもたない。