令和5年度 秋期 データベーススペシャリスト試験 午前II 問8
テクノロジデータベース
この問題は2023(R5)秋 データベーススペシャリスト 午前IIに出題されたものです。出題時点の法令・制度に基づく内容のため、現行の内容と一致しない場合があります。
本ページの問題文・選択肢は、原本の体裁を Web 表示用に正規化しています(改行・記号・数式・図表参照の調整)。設問の趣旨および正解に影響する変更は加えていません。
次の表を,第3正規形まで正規化を行った場合,少なくとも幾つの表に分割されるか。ここで,顧客の1回の注文に対して1枚の受注伝票が作られ,顧客は1回の注文で一つ以上の商品を注文できるものとする。

図の説明テキスト
第3正規形への正規化を問うための表。受注明細データ。
| 受注番号 | 顧客コード | 顧客名 | 受注日 | 商品コード | 商品名 | 単価 | 受注数 | 受注金額 |
|---|---|---|---|---|---|---|---|---|
| 1055 | A7053 | 鈴木電気 | 2023-07-01 | T035 | テレビA | 85,000 | 10 | 850,000 |
| 1055 | A7053 | 鈴木電気 | 2023-07-01 | K083 | 無線スピーカーA | 23,000 | 5 | 115,000 |
| 1055 | A7053 | 鈴木電気 | 2023-07-01 | S172 | Blu-ray プレイヤーB | 78,000 | 3 | 234,000 |
| 2030 | B7060 | 中村商会 | 2023-07-03 | T050 | テレビB | 90,000 | 3 | 270,000 |
| 2030 | B7060 | 中村商会 | 2023-07-03 | S172 | Blu-ray プレイヤーB | 78,000 | 10 | 780,000 |
| 3025 | C9025 | 佐藤電気 | 2023-07-03 | T035 | テレビA | 85,000 | 3 | 255,000 |
| 3025 | C9025 | 佐藤電気 | 2023-07-03 | K085 | 無線スピーカーB | 25,000 | 2 | 50,000 |
| 3025 | C9025 | 佐藤電気 | 2023-07-03 | S171 | Blu-ray プレイヤーA | 50,000 | 8 | 400,000 |
| 3090 | B7060 | 中村商会 | 2023-07-04 | T050 | テレビB | 90,000 | 1 | 90,000 |
| 3090 | B7060 | 中村商会 | 2023-07-04 | T035 | テレビA | 85,000 | 2 | 170,000 |
解答・解説を読む
正解: 選択肢ウ
非正規形の受注伝票を第3正規形まで正規化する手順は以下の通りです。
第1正規形への変換:繰り返し項目(明細行など)を分離します。
- 分割後:「受注表」と「受注明細表」
第2正規形への変換:複合主キーの一部に部分関数従属している属性を分離します。
- 「受注明細表」の主キー(受注番号、商品番号)のうち、商品番号にのみ従属する商品情報を分離します。
- 分割後:「受注表」、「受注明細表」、「商品表」
第3正規形への変換:主キー以外の属性に推移的関数従属している属性を分離します。
- 「受注表」の主キー(受注番号)に従属する顧客番号があり、さらに顧客番号に従属する顧客情報を分離します。
- 分割後:「受注表」、「顧客表」、「受注明細表」、「商品表」
最終的に、「受注表」「受注明細表」「商品表」「顧客表」の少なくとも 4つ の表に分割されます。
各選択肢の解説
- ア 2: 誤り。繰り返し項目のみを分離した第1正規形の状態(受注表と受注明細表など)であり、正規化が不十分です。
- イ 3: 誤り。第2正規形まで進めた状態、あるいは顧客情報の分離(推移的関数従属の排除)を見落とした状態です。
- ウ 4: 正解。第3正規形まで正しく正規化すると、少なくとも4つの表になります。
- エ 5: 誤り。不要な表へ過剰に分割した場合や、誤った属性の分離を行った場合の数です。