DELETE、TRUNCATE和DROP

DELETE、TRUNCATE和DROP

作用

DELETE

delete是数据操作语言,可以删除表中where语句指定的记录,保留表结构,不释放存储空间。
DELETE、TRUNCATE和DROP

TRUNCATE

truncate是数据定义语言,清空表,相当于删除表中所有的数据,保留表结构,释放存储空间。
DELETE、TRUNCATE和DROP

DROP

drop是数据定义语言,删除时,清除表中所有记录并删除表结构,释放存储空间。
DELETE、TRUNCATE和DROP

值行效率

drop > truncate > delete

事务

DELETE

未提交事务之前,可以使用rollback进行事务回滚。

TRUNCATE

隐性提交事务,不能使用rollback进行事务回滚。

DROP

隐性提交事务,不能使用rollback进行事务回滚。

参考资料

https://xiaozhuanlan.com/topic/6375814029
https://juejin.im/post/5dc03bca6fb9a04aa00147d6