级联删除是在有外键约束的时候使用的,当我们使用外键约束的时候,删除一条数据时可能会删除不成功,因为外键约束,但是如果使用级联删除时,会同时将两张表里的数据都给删除,更新也是如此

创建一个数据表,设置外键约束

CREATE TABLE `sci`(`sno` INT(11) NOT NULL,`cno` INT(11) NOT NULL,`grade` INT(11) NOT NULL CHECK (grade BETWEEN 0 AND 100),PRIMARY KEY (`sno`),FOREIGN KEY(sno) REFERENCES student_02(sno),FOREIGN KEY(cno) REFERENCES course(cno)
);

这里并没有一开始就在创建表的时候就加上级联,后期进行Alter进行设置

ALTER TABLE sci ADD FOREIGN KEY(sno) REFERENCES student_02(sno) ON UPDATE CASCADE ON DELETE CASCADE;
ALTER TABLE sci ADD FOREIGN KEY(cno) REFERENCES course(cno) ON UPDATE CASCADE ON DELETE CASCADE;

设置完后,进行删除操作的时候,竟然删除失败

DELETE FROM student_02 WHERE sno = 2;

当我删除掉学生表里的数据时,sci表里sno为2的数据也会删除,但是删除失败

这两个命令可以关闭外键约束,使用之后,发现级联没有了,只会删除单个

SET FOREIGN_KEY_CHECKS = 0;
SET FOREIGN_KEY_CHECKS = 1;

最后查看了sci的表的信息后才发现

原本这里有四个约束,一个是创建表的时候两个约束,还有是后期加上的约束,这里的截图是我删掉了之后,没删之前是四个,所有一直不成功。删掉就可以了

Mysql 级联删除失败相关推荐

  1. 解决mysql级联删除时不会启动delete触发器

    解决mysql级联删除时不会启动delete触发器 目前mysql 5.* 版本在级联删除时不会执行delete触发器,当外键级联删除后没有启动触发器可能会产生一些垃圾数据,这些垃圾数据可能因为某些原 ...

  2. MySql级联删除和更新

    (一)利用外键实现级联删除 1.先建立测试数据库 [sql] view plaincopy CREATE TABLE `roottb` ( `id` INT(11) UNSIGNED AUTO_INC ...

  3. mysql级联删除_MySQL进阶三板斧(三)看清“触发器 (Trigger)”的真实面目

    触发器(Trigger)的起源 MySQL是最受欢迎的开源RDBMS,被社区和企业广泛使用.触发器是MySQL在5.0.1(开天辟地一版本)中增加的三大新功能之一,另外两个师兄弟是视图(view)与存 ...

  4. mysql级联删除外键约束_MySQL外键约束、级联更新、级联删除

    MySQL支持外键(foreign key),外键允许跨表交叉引用相关数据,另外外键约束能够保证相关数据的一致性.一个外键关系通常包括一个父表和一个子表.父表包含原始的字段数据,子表引用父表中该字段的 ...

  5. mysql级联删除外键约束_玩转MySQL的外键约束之级联删除篇

    [IT168 文档]如今,许多关系型数据库管理系统都提供了外键约束这一强大的功能特性,它能够帮助我们自动地触发指定的动作,诸如删掉.更新数据库表的记录等,从而维护各数据库表之间预定义的关系.本文将演示 ...

  6. mysql级联删除外键约束_mysql增加外键级联删除示例

    增加外键级联删除: ALTER TABLE `extends` ADD CONSTRAINT `extends_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES ` ...

  7. mysql级联删除外键约束_MySQL外键设置 级联删除

    . cascade方式 在父表上update/delete记录时,同步update/delete掉子表的匹配记录 . set null方式 在父表上update/delete记录时,将子表上匹配记录的 ...

  8. mysql级联删除外键约束_MySQL外键约束,级联删除

    如果您的级联删除一个产品,因为它是一个类别的成员被杀死,那么你设置你的外键不当.给定示例表,您应该设置了以下表:CREATE TABLE categories ( id int unsigned no ...

  9. mysql级联删除_近百道MySQL面试题和答案(2020收藏版)(完结篇)

    7. 什么是死锁?怎么解决? 死锁是指两个或多个事务在同一资源上相互占用,并请求锁定对方的资源,从而导致恶性循环的现象. 常见的解决死锁的方法 1.如果不同程序会并发存取多个表,尽量约定以相同的顺序访 ...

最新文章

  1. IBM 公开最新 Power 处理器架构
  2. windows下mysql(解压版)安装教程
  3. 技术解读|云上企业级存储——打开存储新维度,促进用户核心业务创新
  4. 前端 JS/TS 调用 ASP.NET Core gRPC-Web
  5. vue.jsr入门_JSR 365更新:深入CDI 2.0
  6. 解决undefined reference to symbol ‘sem_close@@GLIBC_2.2.5‘问题
  7. ARToolKit从图片生成特征点数据
  8. LeetCode 6罗马数字转整数
  9. 计算机思维导论在线测试题库,计算机导论题库有答案.docx
  10. 抖音内测语音直播交友 能够用声音打开社交的一扇门吗?
  11. html调用暴风影音,暴风影音4大使用设置技巧
  12. 十余种无限流量卡大对比,这一种的最实惠!
  13. android 调用原生分享功能,调用Android 系统自带分享功能
  14. QCC512x QCC302x 延时函数 (阻塞与非阻塞)
  15. GYM 101350 I. Mirrored String II
  16. Excel应用-使用VBA自动绘制所有适用类型的Excel图表(代码及效果图)
  17. 学习使用ffmpeg命令给视频添加一张设计好的背景图片
  18. 算法模型---关联规则挖掘学习
  19. lisp画弯箭头_在CAD中直接画箭头的命令的一个方法
  20. GNUradio与USRP折腾指南

热门文章

  1. 如何查看计算机的cpu型号,怎么看电脑处理器型号
  2. 数据名称:中国家庭追踪调查数据CFPS数据年限:2010-2020中国家庭追踪调查(China Family Panel Studies,CFPS)旨在通过跟踪收集个体、家庭、社区三个层次的数据,
  3. 低代码指南100方案:48用好设备巡检管理系统,轻松解决漏检、配件管理混乱等问题
  4. 基于AidLux+Yolov8,实现安卓手机检测纺织物瑕疵
  5. ASCII表与字符编码
  6. The King’s Ups and Downs
  7. 给入行新人的一点忠告
  8. Skytte:一款令人印象深刻的 HTML5 射击游戏
  9. 中英文混合按照首字母排序
  10. Win10家庭版升级到企业版的方法