mysql命令truncate(清空表)和delete(删除表)的区别

原文地址
原文地址:http://blog.sxpyw.com/article/index/37
1、truncate table 表名;
2、delete * from 表名
truncate的table可以省略
delete的*可以省略
truncate是整体删除(速度较快), delete是逐条删除(速度较慢)。
truncate不写服务器log,delete写服务器log,这就是truncate效率比delete高的原因。
truncate不激活trigger(触发器),但是会重置Identity(标识列、自增字段),相当于自增列会被置为初始值,又重新从1开始记录,而不是接着原来的ID数。而delete删除以后,Identity依旧是接着被删除的最近的那一条记录ID加1后进行记录。
如果只需删除表中的部分记录,只能使用DELETE语句配合where条件。 DELETE FROM wp_comments WHERE……

你可能感兴趣的:(mysql)