CASCADE 親が変更されたときに変更を伝播します。 (行を削除すると、その行を参照する制約付きテーブルの行も削除されます。など)
SET NULL 親行がなくなると、列の値をNULLに設定します。
RESTRICT 親行のDELETEの試行は失敗します。
編集:あなたはそれらについて尋ねませんでしたが、SQL標準は他の2つのアクションを定義しています:SET DEFAULT およびNO ACTION 。 MySQLでは、NO ACTION RESTRICTと同等です 。 (一部のDBMSでは、NO ACTION は遅延チェックですが、MySQLではすべてのチェックが即時に行われます。)MySQLパーサーはSET DEFAULTを受け入れます。 、ただし、InnoDBエンジンとNDBエンジンの両方がこれらのステートメントを拒否するため、SET DEFAULT ON UPDATEのどちらにも実際には使用できません またはON DELETE 制約。
また、カスケード外部キーアクションはMySQLのトリガーをアクティブにしないことに注意してください。