IPA公式正解:ウ “在庫”表への行追加
※ 正解はIPA公表の解答です。解説は当サイトが生成AIを用いて作成しています。誤りにお気づきの場合はお問い合わせください。
【解説】正解は選択肢【ウ】です。参照制約(外部キー制約)は、外部キー列の値が参照先(主キー)に存在することを保証する制約です。“在庫”表(子表)へ行を追加する際、入力された“製品番号”が“製品”表(親表)の主キーに存在しない値である場合、参照制約違反として拒否されます。
【詳細解説】■ 本問の核心・解法のポイント
関係データベースにおける参照制約(外部キー制約)の動作原理を理解しているかが問われています。
・参照元(子表):外部キーを持つ表(本問では“在庫”表の製品番号)
・参照先(親表):主キーを持つ表(本問では“製品”表の製品番号)
参照制約により、子表の外部キーには「親表の主キーに存在する値」または「NULL」しか登録・更新できません。
・各選択肢の徹底解説:
・ア:“在庫”表(子表)から行を削除しても、参照整合性が崩れることはないため、参照制約によって拒否されることはありません。
・イ:“在庫”表(子表)そのものを削除する操作は、親表に何の影響も与えないため、参照制約によって拒否されません(拒否される可能性があるのは、外部キーから参照されている“製品”表の削除です)。
・ウ:【選択肢ウ★】“在庫”表に行を追加する際、指定した「製品番号」が“製品”表の主キーに存在しない場合、参照制約違反となり操作が拒否されます。
・エ:“製品”表(親表)に行を追加する操作は、子表の整合性に影響を与えないため、参照制約によって拒否されることはありません(主キー制約等による拒否はあり得ますが参照制約ではありません)。
よって正解はウです。