一つの表で管理されていた受注データを、受注に関する情報と商品に関する情報に分割して正規化を行った上で、関係データベースの表で管理する。正規化を行った結果の表の組合せとして、最も適切なものはどれか。ここで、同一商品で単価が異なるときは商品番号も異なるものとする。また、発注者名には同姓同名はいないものとする。
この問題は、正規化(Normalization)の基本を理解する問題です。
ポイントは、「同じ内容を何度も書かないように、表を分ける」ことです。

受注データには、次の2種類の情報が含まれています:
- 受注に関する情報
例:受注番号、発注者名、商品番号 - 商品に関する情報
例:商品番号、商品名、単価
正規化では、商品名や単価は商品番号で決まるため、商品ごとに別の表に分けます。
正しい表の構成は次の2つです:
受注表
→ 受注番号、発注者名、商品番号、個数
商品表
→ 商品番号、商品名、単価
商品番号が決まれば商品名と単価も一意に決まるため、商品情報は商品表にまとめるのが正しいです。そして、受注表には商品番号を記録し、この商品番号を外部キー(Foreign Key)として商品表の主キー(Primary Key)である商品番号と関連付けます。これにより、受注表から外部キーである商品番号を参照することで、商品表に保存されている商品名や単価を取得することができます。このように、外部キーを使って表同士を連携させることで、データの重複を防ぎ、正しく管理することができます。
正解はエ

※出典:ITパスポート試験 令和6年度 問81