mysql语句中----删除表数据drop、truncate和delete的用法

2025-3-26 / 0 评论 / 8 阅读

程度从强到弱

1、drop table tb

  drop将表格直接删除,没有办法找回

2、truncate (table) tb

  删除表中的所有数据,不能与where一起使用

3、delete from tb (where)

  删除表中的数据(可制定某一行)

区别:truncate和delete的区别

     1、事务:truncate是不可以rollback的,但是delete是可以rollback的;

          原因:truncate删除整表数据(ddl语句,隐式提交),delete是一行一行的删除,可以rollback

     2、效果:truncate删除后将重新水平线和索引(id从零开始) ,delete不会删除索引  

     3、 truncate 不能触发任何Delete触发器。

     4、delete 删除可以返回行数