応用情報22年秋 午前 問32
【中分類】
データベース−3. データ操作−(2)データベース言語
の
2データベース言語(SQL)−(a)データ定義言語
−用語例:参照制約
【問題を解く前に】
この状況をクラス図で図示すると、こんなかんじ
(ごめんなさい。Astah*、コミュニティ版しかもっていないので、
ER図が、かけないのです・・・かわりにメソッドなしのクラス図)
図でわかるように、製品が親、在庫が子
(一般に1対Nのとき、1が親、Nが子
また、原則1が、主キーのほう、Nが参照キーのほう)
具体的に考えましょう
製品番号1 あひる隊長
在庫番号0101−製品番号1−在庫量50
在庫番号0201−製品番号1−在庫量150
このとき、
親は製品、子は在庫となります。
さて、もし
・製品番号1のアヒル隊長を削除してしまうと、在庫0101と0201は、
なにを在庫にしているのかわかりません。なので困ります
→製品(=親)を削除されると困ります
なお、これは、可能性の話であって、もちろん、はじめに、
製品番号1の在庫を削除していれば良いわけです。
・ここで、
在庫番号0202−製品番号2−在庫量100
というのを追加することを考えます。
製品番号2は、登録していません。したがって、
なにを在庫にしているのかわかりません。なので困ります
→在庫(=子)を追加されると困ります
なお、これは、可能性の話であって、もちろん、はじめに、
製品番号2の製品を登録していれば良いわけです。
ということです。
【解き方】
上記より、
→製品(=親)を削除されると困ります
→在庫(=子)を追加されると困ります
ですので、選択肢から、これを探すと・・・
【答え】
(ウ)
【解き終わって】
特に、難しいところはないですね!