MySQL 清空表中数据

MySQL清空表中的数据(不算DROP语句)

1. truncate 语句

truncate table table_name
  1. 不能与where一起使用
  2. truncate删除数据后是不可以rollback
  3. truncate删除数据后会重置Identity(标识列、自增字段),相当于自增列会被置为初始值,又重新从1开始记录,而不是接着原来的ID数
  4. truncate删除数据后不写服务器log,整体删除速度快
  5. truncate删除数据后不激活trigger(触发器)

2. delete 语句

delete from table_name (where xxx=xxx)
  1. 可以where子句一起使用
  2. 不会重置Identity字段,主键id继续增加
  3. 会写入数据log文件(主从、主备需要)
  4. 可以激活trigger(触发器)

参考:
http://blog.is36.com/mysql_difference_of_truncate_and_delete/

你可能感兴趣的:(MySQL)