mysql在有外键时,怎么截断表。
2020-04-16 本文已影响0人
夜月河色
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;