Mysql--truncate--清空/删除表数据

通过mysql命令行删除表数据,大概有两种方式,truncate和delete

1
2
truncate table table_name;
delete * from table_name;

两者区别:

1、truncate执行整体数据参数,速度较快;delete逐条删除,速度较慢
2、truncate不写服务器log,delete写服务器log,也是truncate执行效率高的一个原因
3、truncate不激活trigger,但会重置Identity(标识列、自增字段),也就是删除表数据后,自增列被置为初始值(1);而delete删除后,自增字段会从被删除的最近记录ID +1 后继续记录
4、truncate是整表级别的删除;delete允许删除指定记录,配合where条件使用

坚持原创技术分享,您的支持将鼓励我继续创作!