この概念が出た関連問題

この試験の対策ガイド

ITパスポート試験 対策ガイド

合格率・勉強法・参考書の選び方をまとめています

見る →
答えと解説を見る(先に解くのがおすすめ)

正解は エ

解説

この問題は、データベースの正規化に関する理解を問うています。正規化とは、データの重複を減らし、データの整合性を保つために、テーブルを適切に分割することです。与えられた受注データの場合、「受注情報」と「商品情報」を適切に分離する必要があります。正解のDでは、受注テーブルには取引の詳細(誰が、何を、いくつ注文したか)が、商品テーブルには商品の基本情報(商品番号、商品名、単価)が格納されており、商品番号を介して両テーブルが関連付けられる理想的な構造となっています。

なぜ他の選択肢は違うのか

選択肢 ア
受注情報と商品情報が完全に分離されていません。商品の注文個数が商品テーブルに含まれているため、同じ商品が複数回注文された場合にデータの整合性が保てなくなります。
選択肢 イ
商品テーブルに個数が含まれているのは不適切です。注文個数は取引ごとに異なる値なので、受注テーブル側で管理すべき情報です。
選択肢 ウ
受注テーブルに単価が含まれているのは不適切です。単価は商品固有の情報であり、商品テーブル側で一元管理すべきです。

解くときのポイント

正規化を考える際は、「その情報が何に紐づく情報なのか」を考えることがポイントです。例えば、単価は商品に紐づく情報、注文個数は取引(受注)に紐づく情報、というように分類していくと、適切なテーブル設計ができます。