データベース設計(全65問中53問目)

受注システムについて,図のようなデータモデルから"顧客"表,"注文"表,"商品"表を作成した。これらの表に関する記述のうち,適切なものはどれか。ここで,1 *は1対多の関係を表し,線上の名称はロール名である。また,表定義中の下線のうち実線は主キーを,破線は外部キーを表す。
63.png

出典:平成18年秋期 問63

  • ある顧客は,自分が注文主でかつ届け先であることができる。
  • 顧客は,注文主顧客と届け先顧客のどちらか一方に分類される。
  • 一つの注文に複数の商品があってもよい。
  • 一つの注文に複数の注文主と届け先があっても良い。
正解 問題へ
分野:テクノロジ系
中分類:データベース
小分類:データベース設計
解説
問題となるのは顧客と注文の関係ですが、表定義を見てもわかるように1つの注文に対してそれぞれ"注文主"と"届け先"が存在するという関係です。

一般的な通信販売を連想すればわかるように、注文には「注文主が自身で受け取る」または「注文主が別の場所に届ける」という2つのパターンがあります。つまり"注文主顧客コード"と"届け先顧客コード"が同じになることがあります。
  • 正しい。注文主であり届け先になることができます。
  • 顧客表は1つなので分類はされていません。どの顧客も"注文主"、"届け先"のどちらにもなり得ます。
  • 注文と商品の関係は"多対1"なので、1つの注文に対応する商品は1つになります。
  • 注文と顧客の関係は"多対1"なので、1つの注文に対応する注文主,届け先はぞれぞれ1つになります。

Pagetop