mysql的外键约束等级有哪些

今天就跟大家聊聊有关mysql的外键约束等级有哪些,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

1、Cascade方式。

当update/delete记录在主表上时,同步update/delete掉从表的匹配记录。

2、Set null方式。

当update/delete记录在主表上时,从表上匹配记录的列被设置为null,但需要注意的是,子表的外键列不能是notnull。

3、No action方式。

如果子表中有匹配记录,则不允许update/delete操作与父表相对应的候选键。

4、Restrict方法,与no action相同。

立即检查外键约束。

5、Set default模式,空白可能显示在可视化工具SQLyog中。

当父表发生变化时,子表将外键列设置为默认值,但Innodb无法识别。

实例

-- 部门表
create table dept(
id int primary key,
dept_name varchar(50),
dept_location varchar(50)
);
-- 员工表
CREATE TABLE emp(
eid int primary key,
name varchar(50) not null,
sex varchar(10),
    dept_id int
);
-- 给员工表表的dept_id添加外键指向部门表的主键
alter table emp add foreign key(dept_id) references dept(id)

看完上述内容,你们对mysql的外键约束等级有哪些有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。