メインコンテンツへスキップ
ITパスポート令和6年度 CBT午前81

令和6年度 CBT ITパスポート 午前81

難度標準

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

選択肢

受注番号,発注者名 と 商品番号,商品名,個数,単価
受注番号,発注者名,商品番号 と 商品番号,商品名,個数,単価
受注番号,発注者名,商品番号,個数,単価 と 商品番号,商品名
受注番号,発注者名,商品番号,個数 と 商品番号,商品名,単価

解説

結論 → 詳細 → 補足 の 3 層構成

展開
結論Layer 1

エ が最も適切な表の組合せです。正規化の目的は、データの冗長性を排除し、一貫性を保つことにあります。

詳細Layer 2

まず、正解の根拠について説明します。正規化を進める上で、一般的に実体(エンティティ)ごとに表を分割します。この問題では、「受注」と「商品」という二つの主要な実体が見られます。受注データには、どの受注がいつ、誰によって行われたかという情報と、その受注にどの商品がいくつ含まれるかという情報が含まれます。商品データには、商品の基本的な情報(番号、名称)と、その時点での単価が含まれます。

補足Layer 3

選択肢エでは、「受注番号,発注者名,商品番号,個数」という表と、「商品番号,商品名,単価」という表に分割されています。「受注番号,発注者名,商品番号,個数」の表は、どの受注(受注番号)が、誰によって(発注者名)、どの商品(商品番号)をいくつ(個数)注文したか、という受注明細の情報を管理します。一方、「商品番号,商品名,単価」の表は、商品番号ごとに商品名と単価という商品自体の属性を管理します。これにより、同じ商品でも単価が異なる場合(問題文の条件)、商品番号をキーとして単価を管理でき、受注明細とは独立して商品の情報を管理できます。また、発注者名に同姓同名がいないという条件は、発注者名をキーとして一意に特定できることを示唆していますが、ここでは受注番号が主キーとして機能するため、直接的な影響はありません。

他の選択肢が誤りである理由を説明します。

アは「受注番号,発注者名」と「商品番号,商品名,個数,単価」に分割していますが、これではどの受注がどの商品を含んでいるのか、また個数がどれだけなのかという関係性が失われてしまいます。

イは「受注番号,発注者名,商品番号」と「商品番号,商品名,個数,単価」に分割しています。この場合、「受注番号,発注者名,商品番号」の表では、ある受注で同じ商品が複数回登場する場合(例えば、異なる時期に同じ商品を注文したが、個数は合算される場合など)に、個数情報が管理できず、データの冗長性や更新時の矛盾を生じさせる可能性があります。

ウは「受注番号,発注者名,商品番号,個数,単価」と「商品番号,商品名」に分割しています。この場合、各受注明細ごとに単価が重複して管理されることになり、正規化の目的であるデータの冗長性排除に反します。また、同じ商品で単価が異なる場合、この分割では適切に管理できません。

この解説は?
この解説は AI 生成です(詳細)

解説テキストは Google Gemini に IPA 公式の問題文・公式解答を入力して生成しました。 人間によるレビューを行ったものと、未レビューのものが混在します。

AI は事実誤認・選択肢の取り違え・最新法令の反映漏れ等を含む可能性があります。 重要な判断は必ず IPA 公式 PDF または最新の参考書でご確認ください。

解説の検証プロセス・誤り報告フローは 運営透明性レポートで公開しています。

※ AI 生成の解説は誤りを含む可能性があります。重要な判断は IPA 公式資料でご確認ください。

最終更新:

分野「データベース」の学習ポイント

この問題の理解を「分野全体の力」に広げるための足がかり

何が問われるか
正規化・SQL・トランザクション特性(ACID)・同時実行制御・分散DBの基本。
学習の進め方
ER 図 ⇄ 関係スキーマ ⇄ SQL の3者を行き来できるよう演習。3NF までの正規化を手で実行できると強い。
関連キーワード
正規化SQLACIDトランザクションロックデッドロックER図
この分野の問題をもっと解く
AI コパイロット

この問題を AI と深掘りする

用語解説・選択肢分析・類題生成をその場で対話。クイズモードでは解答→解説がゼロ遷移。

クイズモードで開く

共有

X でシェアLINE

ショート動画

関連する問題

データベース の他の問題