1、MySQL清空表数据命令:truncate

truncate table 表名

注意:

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

2、MySQL删除表命令:drop

drop table 表名;
# 或者是
drop table if exists 表名;

注意:

  • truncate只会清除表数据,drop不光清除表数据还要删除表结构。

3、MySQL清空数据表指定内容的语法:delete

delete from 表名 where id='1';
# 或者是
delete from 表名;

注意:

  • delete含义:你要删除哪张表的数据?你要删掉哪些行?
  • delete可以删除一行,也可以删除多行;
  • 如果不加where条件,则是删除表所有的数据,这是很危险的!不建议这样做!

4、总结

  • 当你不再需要该表时,用drop;
  • 当你仍要保留该表,但要删除所有数据表记录时,用truncate;
  • 当你要删除部分记录或者有可能会后悔的话,用delete。