データベース設計 (全65問中53問目)
No.53
受注システムについて,図のようなデータモデルから"顧客"表,"注文"表,"商品"表を作成した。これらの表に関する記述のうち,適切なものはどれか。ここで,1 *は1対多の関係を表し,線上の名称はロール名である。また,表定義中の下線のうち実線は主キーを,破線は外部キーを表す。
出典:平成18年秋期 問63
- ある顧客は,自分が注文主でかつ届け先であることができる。
- 顧客は,注文主顧客と届け先顧客のどちらか一方に分類される。
- 一つの注文に複数の商品があってもよい。
- 一つの注文に複数の注文主と届け先があっても良い。
分類
テクノロジ系 » データベース » データベース設計
正解
ア
解説
問題となるのは顧客と注文の関係ですが、表定義を見てもわかるように1つの注文に対してそれぞれ"注文主"と"届け先"が存在するという関係です。
一般的な通信販売を連想すればわかるように、注文には「注文主が自身で受け取る」または「注文主が別の場所に届ける」という2つのパターンがあります。つまり"注文主顧客コード"と"届け先顧客コード"が同じになることがあります。
一般的な通信販売を連想すればわかるように、注文には「注文主が自身で受け取る」または「注文主が別の場所に届ける」という2つのパターンがあります。つまり"注文主顧客コード"と"届け先顧客コード"が同じになることがあります。
- 正しい。注文主であり届け先になることができます。
- 顧客表は1つなので分類はされていません。どの顧客も"注文主"、"届け先"のどちらにもなり得ます。
- 注文と商品の関係は"多対1"なので、1つの注文に対応する商品は1つになります。
- 注文と顧客の関係は"多対1"なので、1つの注文に対応する注文主,届け先はぞれぞれ1つになります。