删除一张数据表的所有数据delete和truncate哪个更好?

在前几天的数据库学习中,遇到了需要删除数据表所有数据的问题,在网上查阅了相关资料,发现两种比较常用的清楚数据的方式,就是delete和truncate这两个关键字:
下面是自己总结的二者的区别:

相同点:

  • delete和truncate它们都可以用来清除表数据,而且都不会改变原有的表的结构
  • 相应语法格式:
delete关键字:delete from 表名
truncate关键字:truncate 表名

不同点:

  • truncate可以在清除表数据的同时,可以时自增列的“计数器”归零
  • 还有就是不会影响事务(这个还没有体会到)

总结:在需要清除数据时建议使用truncate关键字
以上就是我目前对二者的全部理解,如有错误请大家多多纠正,谢谢。