删除MySQL中所有表的外键的两种方法!
删除MySQL中所有表的外键的两种方法!
这篇文章主要介绍了删除MySQL中所有表的外键的两种方法,文中通过代码示例讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下。
方法一:
原理
查询schema中所有外键名称然后拼接生成删除语句
第一步:
|
1
2
3
|
SELECT CONCAT('ALTER TABLE ',TABLE_SCHEMA,'.',TABLE_NAME,' DROP FOREIGN KEY ',CONSTRAINT_NAME,' ;') FROM information_schema.TABLE_CONSTRAINTS c WHERE c.TABLE_SCHEMA='数据库名' AND c.CONSTRAINT_TYPE='FOREIGN KEY'; |

第二步:
将执行第一步得到的SQL语句拷贝到命令行中执行,就会删除所有的外键了。
方法二
|
1
2
3
4
|
-- 禁用外键约束SET FOREIGN_KEY_CHECKS = 0-- 启用外键约束SET FOREIGN_KEY_CHECKS = 1; |
由于FOREIGN_KEY_CHECKS是基于session的,当关闭了session重新建立连接,这个变量就会恢复默认值,也就是开启外键约束,当然我们也可以全局的FOREIGN_KEY_CHECKS变量。
|
1
2
3
|
SET GLOBAL FOREIGN_KEY_CHECKS = 0;或者:SET @@GLOBAL.FOREIGN_KEY_CHECKS = 0; |
修改完成后,可以使用下面命令查看修改后的结果:
|
1
|
SELECT @@FOREIGN_KEY_CHECKS; |
到此这篇关于删除MySQL中所有表的外键的两种方法的文章就介绍到这了。
学习资料见知识星球。
以上就是今天要分享的技巧,你学会了吗?若有什么问题,欢迎在下方留言。
快来试试吧,小琥 my21ke007。获取 1000个免费 Excel模板福利!
更多技巧, www.excelbook.cn
欢迎 加入 零售创新 知识星球,知识星球主要以数据分析、报告分享、数据工具讨论为主;
1、价值上万元的专业的PPT报告模板。
2、专业案例分析和解读笔记。
3、实用的Excel、Word、PPT技巧。
4、VIP讨论群,共享资源。
5、优惠的会员商品。
6、一次付费只需129元,即可下载本站文章涉及的文件和软件。
