トランザクション処理 (全65問中19問目)
No.19
SQLにおいて,A表の主キーがB表の外部キーによって参照されている場合,各表の行を追加・削除する操作の参照制約について,正しく整理した図はどれか。ここで,△印は操作が拒否される場合があることを表し,○印は制限なしに操作ができることを表す。
出典:平成30年春期 問28
分類
テクノロジ系 » データベース » トランザクション処理
正解
ア
解説
A表の主キーがB表の外部キーによって参照されている下表を例として、操作の可否を検討していきます。[A表への追加]
A表に行を追加してもB表との整合性に問題は生じないため、新たな製品コードと製品名の組を追加することができます。したがって"○"になります。
[A表からの削除]
B表から参照されている製品コードP1,P2,P3,P4が削除された場合、B表がA表の存在しない行を参照することになってしまうため削除できません。B表から参照されていないP5,P6,P7の行であれば削除することが可能です。したがって"△"になります。
[B表への追加]
追加しようとする行の製品コードにA表に存在しない値(例えばP8)が指定されていた場合、B表はA表内の存在しない行を参照することになってしまうため追加できません。したがって"△"になります。
[B表からの削除]
どの行を削除してもA表との整合性は保たれるので制限なく削除可能です。したがって"○"になります。
したがって適切な組合せは「ア」です。
A表に行を追加してもB表との整合性に問題は生じないため、新たな製品コードと製品名の組を追加することができます。したがって"○"になります。
[A表からの削除]
B表から参照されている製品コードP1,P2,P3,P4が削除された場合、B表がA表の存在しない行を参照することになってしまうため削除できません。B表から参照されていないP5,P6,P7の行であれば削除することが可能です。したがって"△"になります。
[B表への追加]
追加しようとする行の製品コードにA表に存在しない値(例えばP8)が指定されていた場合、B表はA表内の存在しない行を参照することになってしまうため追加できません。したがって"△"になります。
[B表からの削除]
どの行を削除してもA表との整合性は保たれるので制限なく削除可能です。したがって"○"になります。
したがって適切な組合せは「ア」です。