-
delete 逐条删除表“内容”,truncate 先摧毁表再重建。 (由于delete使用频繁,Oracle对delete优化后delete快于truncate)
-
delete 是DML语句,truncate 是DDL语句
DML语句可以闪回(flashback),DDL语句不可以闪回。(闪回: 做错了一个操作并且commit了,对应的撤销行为) -
由于delete是逐条操作数据,所以delete会产生碎片,truncate不会产生碎片。(由于Oracle对delete进行了优化,所以delete不产生碎片)
-
delete不会释放空间,truncate 会释放空间
用delete删除一张10M的表,空间不会释放。而truncate会。所以当确定表不再使用,应truncate -
delete可以回滚rollback,truncate不可以回滚rollback
delete 和 truncate 的区别
最新推荐文章于 2023-08-03 11:05:07 发布