当前位置:Gxlcms > 数据库问题 > Mysql实现级联操作(级联更新、级联删除)(转)

Mysql实现级联操作(级联更新、级联删除)(转)

时间:2021-07-01 10:21:17 帮助过:3人阅读

insert into stu (name) value (‘ls‘); insert into stu (name) value (‘zs‘); insert into stu (name) value (‘ww‘);   insert into sc(sid,score) values (‘1‘,‘98‘); insert into sc(sid,score) values (‘1‘,‘98‘); insert into sc(sid,score) values (‘2‘,‘34‘); insert into sc(sid,score) values (‘2‘,‘98‘); insert into sc(sid,score) values (‘2‘,‘98‘); insert into sc(sid,score) values (‘3‘,‘56‘); insert into sc(sid,score) values (‘4‘,‘78‘); insert into sc(sid,score) values (‘4‘,‘98‘);

技术图片

 

注意:在sc表中插入数据时,若插入的sid为22,则会插入失败,违反外键约束,因为外键sid 
来自stu表中的id的主键,即stu中的id没有等于22的数据。

级联删除:将stu表中id为2的学生删除,该学生在sc表中的成绩也会级联删除

delete from stu where sid = ‘2‘;

技术图片

 


级联更新:stu表中id为3的学生更改为id为6,该学生在sc表中的对应id也会级联更新

update stu set sid=6 where sid=‘3‘;

技术图片

 

注意

删除表的时候必须先删除外键表(sc),再删除主键表(stu)

 技术图片

上图为违反外键约束,不能删除

技术图片

上图为正常删除,先删除sc表,再删除stu表!

Mysql实现级联操作(级联更新、级联删除)(转)

标签:signed   复制   mic   --   alt   nod   等于   tle   mys   

人气教程排行