参照制約と参照動作とは?さんしょうせいやくとさんしょうどうさ
参照制約と参照動作とは、外部キーの値が、参照先の主キーに必ず存在することを保証する制約。参照先の行を削除・更新したときの振る舞いを参照動作として宣言でき、RESTRICT/NO ACTION(拒否)、CASCADE(連鎖)、SET NULL、SET DEFAULT から選ぶ。整合性をアプリではなくDBで守る手段。
最終更新:2026-10-06
応用情報を最短で暗記・合格する →具体例
受注明細が受注ヘッダを参照する構造で、ヘッダ削除時にCASCADEを指定すれば明細も自動で消える。逆に会計監査上、明細を残す必要があるならRESTRICTにして削除自体を拒否し、論理削除フラグで運用する。どちらが正しいかは業務要件で決まる。
試験での引っ掛け
CASCADEは便利に見えるが、連鎖が多段に及ぶと1行の削除で数万行が消え、しかもアプリのログに残らない。またSET NULLは外部キー列にNOT NULL制約があると指定できない。制約の組合せに矛盾があると定義時にエラーになる。
関連用語
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。