CASCADE propagherà la modifica quando cambia il genitore. (Se elimini una riga, verranno eliminate anche le righe nelle tabelle vincolate che fanno riferimento a quella riga, ecc.)
SET NULL imposta il valore della colonna su NULL quando una riga padre scompare.
RESTRICT fa fallire il tentativo di DELETE di una riga padre.
EDIT:non hai chiesto informazioni su di loro, ma lo standard SQL definisce altre due azioni:SET DEFAULT e NO ACTION . In MySQL, NO ACTION è equivalente a RESTRICT . (In alcuni DBMS, NO ACTION è un controllo differito, ma in MySQL tutti i controlli sono immediati.) Il parser MySQL accetta SET DEFAULT , ma entrambi i motori InnoDB e NDB rifiutano tali istruzioni, quindi SET DEFAULT in realtà non può essere utilizzato nemmeno per un ON UPDATE o ON DELETE vincolo.
Inoltre, nota che le azioni di chiave esterna a cascata non attivano i trigger in MySQL.