メインコンテンツへスキップ
システムアーキテクト令和7年度 春期午前I10

令和7年度 春期 システムアーキテクト 午前I10

難度標準

SQL 文に示す参照制約が存在する“商品”表と“受注”表とがある。“商品”表の行を削除したとき、削除した行の商品コードと同じ値の商品コードをもつ“受注”表の行を自動的に削除する SQL文として、aに入れる字句はどれか。

[SQL文〕

CREATE TABLE 商品(

商品コード CHAR(4) PRIMARY KEY ,

商品名 VARCHAR(64)

)

CREATE TABLE 受注(

受注番号 INTEGER PRIMARY KEY ,

商品コード CHAR(4),

受注個数 INTEGER,

納品日 CHAR(8),

FOREIGN KEY(商品コード) REFERENCES 商品(商品コード)

ON DELETE a

)

選択肢

CASCADE
RESTRICT
SET DEFAULT
SET NULL

解説

結論 → 詳細 → 補足 の 3 層構成

展開
結論Layer 1

正解はアのCASCADEです。ON DELETE句は、外部キー制約を持つテーブル(ここでは「受注」表)で、参照元のテーブル(ここでは「商品」表)の行が削除された場合に、外部キーを持つ行をどう処理するかを指定します。CASCADEを指定すると、参照元の「商品」表の行が削除された際に、その商品コードを持つ「受注」表の行も自動的に削除されます。これは「連鎖削除」とも呼ばれます。

詳細Layer 2

イのRESTRICTは、参照元の行削除を制限します。参照されている行がある場合、削除は実行されません。ウのSET DEFAULTは、削除された行に対応する外部キー列をデフォルト値に設定しますが、この定義ではデフォルト値が設定されていません。エのSET NULLは、削除された行に対応する外部キー列をNULLに設定しますが、「商品コード」列はNOT NULL制約ではないか、あるいはNULLを許容しない設計が一般的であり、この場合「受注」表の「商品コード」列は、必ず特定の商品を参照する必要があるという意図からNULLにすることは適切ではありません。

この解説は?
この解説は AI 生成です(詳細)

解説テキストは Google Gemini に IPA 公式の問題文・公式解答を入力して生成しました。 人間によるレビューを行ったものと、未レビューのものが混在します。

AI は事実誤認・選択肢の取り違え・最新法令の反映漏れ等を含む可能性があります。 重要な判断は必ず IPA 公式 PDF または最新の参考書でご確認ください。

解説の検証プロセス・誤り報告フローは 運営透明性レポートで公開しています。

※ AI 生成の解説は誤りを含む可能性があります。重要な判断は IPA 公式資料でご確認ください。

最終更新:

分野「データベース」の学習ポイント

この問題の理解を「分野全体の力」に広げるための足がかり

何が問われるか
正規化・SQL・トランザクション特性(ACID)・同時実行制御・分散DBの基本。
学習の進め方
ER 図 ⇄ 関係スキーマ ⇄ SQL の3者を行き来できるよう演習。3NF までの正規化を手で実行できると強い。
関連キーワード
正規化SQLACIDトランザクションロックデッドロックER図
この分野の問題をもっと解く
AI コパイロット

この問題を AI と深掘りする

用語解説・選択肢分析・類題生成をその場で対話。クイズモードでは解答→解説がゼロ遷移。

クイズモードで開く

共有

X でシェアLINE

ショート動画

関連する問題

データベース の他の問題