美文网首页
(19)drop、truncate和delete的区别

(19)drop、truncate和delete的区别

作者: hedgehog1112 | 来源:发表于2020-10-23 14:17 被阅读0次

速度上 drop> truncate > delete

1、drop:删除

2、truncate:保留表,删除所有数据,1)和事务无关(删除行不能恢复); 有外键约束能用; 2)表和索恢复初始大小(重新设置高水线和索引,缺省时将空间释放到minextents个extent除非:)

        truncate + reuse stroage:整理表内部碎片,再重新导入/插入数据。

3、delete:删除部分数据,1)和事务有关(事务记日志中以便回滚),想触发trigger; 2)空间全释

truncate、drop是DLL(data define language), 隐式提交,立即生效,原数据不放 rollback segment中,不能回滚,不会触发触发器。

https://zhuanlan.zhihu.com/p/174836293

相关文章

网友评论

      本文标题:(19)drop、truncate和delete的区别

      本文链接:https://www.haomeiwen.com/subject/nelvmktx.html