- 两种级联操作
级联删除
当删除主表数据时自动删除从表中相关的数据。
级联更新
当主表外键约束字段(一般是主键)更新时,自动更新从表的数据。 - 5种级联方式
关键字:ON UPDATE、ON DELETE
第一种:CASCADE
在主表上update/delete记录时,同步update/delete掉从表的匹配记录
ALTER TABLE 从表 ADD [CONSTRAINT 约束名] FOREIGN KEY(外键) REFERENCES 主表(一般是主键) ON UPDATE CASCADE ON DELETE CASCADE;
第二种:SET NULL
在主表上update/delete记录时,将从表上匹配记录的列为NULL
ALTER TABLE 从表 ADD [CONSTRAINT 约束名] FOREIGN KEY(外键) REFERENCES 主表(一般是主键) ON UPDATE SET NULL ON DELETE SET NULL;
第三种:NO ACTION(mysql中默认执行的)
如果从表中有匹配的记录,则不允许对主表的关联字段更新
第四种:RESTRICT
同NO ACTION
第五种:SET DEFAULT
主表有变更时,子表将外键列设置成一个默认的值,但Innodb不能识别…