需求

使用 mysql 在删除数据表时,报错: =“Cannot delete or update a parent row: a foreign key constraint fails” =

解决

这个问题其实很简单,就是需要删除的表关联到了其他副表,想要删除无非就几种方法:

  • 先把其他相关联的副表中的内容给删除掉,再回头删除主表中的内容
  • 先禁用外键约束,等删除好了,再启用外键约束
    SET FOREIGN_KEY_CHECKS=0;  -- 禁用外键约束
    
    SET FOREIGN_KEY_CHECKS=1;  -- 启用外键约束
    
  • 外键约束中,删除也选择 CASCADE 级联约束。

参考