外键的约束(外键的限制、外键对父子表数据的维护关系)

CASCADE、NO ACTION、RESTRICT、SET NULL这几项可以理解为是:外键对父子表之间数据关系维护(限制)级别

父表:被拿主键作为外键的表
子表:拿别的表的主键作为外键的表

CASCADE:父表delete、update的时候,子表会delete、update掉关联记录;
NO ACTION:如果子表中有匹配的记录,则不允许对父表中的那个键进行update/delete操作;
RESTRICT:如果想要删除父表的记录时,而在子表中有关联该父表的记录,则不允许delete记录;
SET NULL:在父表上update/delete记录时,将子表上匹配记录的列设为null要注意子表的外键列不能为not null;
SET DEFAULT:父表有变更时,子表将外键列设置成一个默认的值 但Innodb不能识别;

标签: none

评论已关闭