カコモンノート

問27応用情報技術者 令和元年度 秋期

27 / 80問
令和元年度 秋期2019年

図のような関係データベースの"注文"表と"注文明細"表がある。"注文"表の行を削除すると,対応する"注文明細"表の行が,自動的に削除されるようにしたい。SQL 文の ON DELETE 句に指定する語句はどれか。ここで,図中の実線の下線は主キーを,破線の下線は外部キーを表す。

この問題の図
問題に添えられた図。出典は下に書いています。

選択肢をえらぶと、答えと解説が出ます

選択肢をえらぶと、
ここに答えと解説が出ます
正答 1

解説

正解は1。"注文明細"表の注文番号は"注文"表の注文番号を参照する外部キー。参照制約の ON DELETE CASCADE を指定すると、参照される側の"注文"表の行を削除したとき、その注文番号を参照している"注文明細"表の行も連鎖して自動的に削除される。

  • 2のINTERSECTは、二つの問合せ結果の共通部分を求める集合演算で、参照制約の動作の指定ではない。
  • 3のRESTRICTは、参照している行があるときに、参照される側の行の削除を拒否する指定で、自動削除とは逆。
  • 4のUNIQUEは、列の値が重複しないことを求める一意性制約で、ON DELETE句には指定しない。

根拠:SQLの参照制約(FOREIGN KEY … REFERENCES … ON DELETE)の参照動作。

KEY POINT
ON DELETE CASCADEは参照される行の削除に合わせて、参照している行も連鎖して削除する。
出典:令和元年度 秋期 応用情報技術者試験 午前 問27(独立行政法人 情報処理推進機構(IPA))
独立行政法人情報処理推進機構(IPA)が公表している過去問題です。IPA の「過去問題の使用について」に基づき、IPA が指定する形で出典を明記して掲載しています(利用の許諾申請は不要)。問題文・選択肢の内容は変えていません。元の問題冊子から文字を起こす都合で、改行・字間の空白は省き、英数字の全角・半角は元とそろえていない箇所があります。図表は IPA が公表した問題冊子のものです。解説は当サイトが独自に作成したもので、IPA とは関係ありません。