###场景
有一张c1表
c1表中的字段如下

  • cno :课程号
  • cname:课程名称
  • cpno:先行课
  • credit:学分

#####需求
将某一课程删除之后,将删除以这一课程为先行课的所有课程

###解决方案
将cpno设置为外键,引用的是自身表的cno
使用联级删除(on delete cascade),在外键约束时添加

MySQL 联级删除(on delete cascade)应用


如果没有使用联级删除(on delete cascade),将会包以下错误
MySQL 联级删除(on delete cascade)应用

错误:1451 SQLSTATE: 23000 (ER_ROW_IS_REFERENCED_2)
消息:不能删除或更新父行,外键约束失败(%s)。

相关文章:

  • 2022-12-23
  • 2022-02-28
  • 2021-12-21
  • 2021-12-30
  • 2022-12-23
  • 2021-06-06
  • 2021-06-10
猜你喜欢
  • 2021-06-11
  • 2022-01-15
  • 2021-10-29
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案