mysql在有外键时,怎么截断表。

1、mysql5.7及以上需要先修改sql_mode。修改时注意语句的引号

//查询sql_mode
SELECT @@GLOBAL.sql_mode;
//修改sql_mode
SET @@sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';

2、修改外键使用状态

//查询外键使用状态
SELECT  @@FOREIGN_KEY_CHECKS;
//设置外键使用状态为0
SET FOREIGN_KEY_CHECKS=0;

3、截断表

TRUNCATE 表名1;
TRUNCATE 表名2;
TRUNCATE 表名3;

4、恢复外键使用

//设置外键使用状态为1
SET FOREIGN_KEY_CHECKS=1;
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容