怎么删除mysql中的所有外键

怎么删除mysql中的所有外键,第1张

在删除那个把该外键作为主键的表之前,你先把包含外键的那个表中的外键全部删掉,置为null,或者直接将那列删掉,这样就没有地方引用这些外键,你就可以将那个表删除掉了。希望可以帮忙。记得以前做过类似的东西,删除将外键作为主键的表之前,必须将引用到这个键的内容置空,即没有引用该键,这样便可以删除了。

在MySQL中删除一张表或一条数据的时候,出现

[Err] 1451 -Cannot deleteorupdatea parent row:

aforeignkeyconstraintfails (...)

这是因为MySQL中设置了foreign key关联,造成无法更新或删除数据。可以通过设置FOREIGN_KEY_CHECKS变量来避免这种情况。

禁用外键约束,我们可以使用:

SETFOREIGN_KEY_CHECKS=0

然后再删除数据

启动外键约束,我们可以使用:

SETFOREIGN_KEY_CHECKS=1

查看当前FOREIGN_KEY_CHECKS的值,可用如下命令:

SELECT @@FOREIGN_KEY_CHECKS


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6132644.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-15
下一篇 2023-03-15

发表评论

登录后才能评论

评论列表(0条)

保存