Analysis and functions of MySql foreign key constraints on CASCADE, set null, RESTRICT, and empty types
MySql foreign key constraints: NULL, RESTRICT, no action, CASCADE, set null, and other types of analysis and interpretation.
Master table, slave table
Null, RESTRICT, NO ACTION
Delete: The primary table can be deleted only when the table record does not exist. Delete the slave table. The master table remains unchanged.
UPDATE: The primary table can be updated only when the slave table record does not exist. Update slave table. The master table remains unchanged.
CASCADE
Delete: The slave table is automatically deleted when the master table is deleted. Delete the slave table. The master table remains unchanged.
UPDATE: The slave table is automatically updated when the master table is updated. Update slave table. The master table remains unchanged.
SET NULL
Delete: when the master table is deleted, the value of the slave table is automatically updated to NULL. Delete the slave table. The master table remains unchanged.
Update: when the master table is updated, the value of the slave table is automatically updated to NULL. Update slave table. The master table remains unchanged.