一、工作中遇到的一些小惊喜
1.最近在生产上修改别人脚本时,发现在清除表时用purge很多,之前只知道它是清楚表,表空间,表索引的,通过查找,发现 了它的很多妙用。
2.它和truncate有一拼,都是删完表后,不能回滚,直接释放资源的那种,它是可以直接清除表以及表所在的表空间了。
3.比drop最大区别就是在于是否提交,回滚,清除回收站残留资源
二、sql脚本解析
1.据Oracle官方给出,使用purge可以删的很彻底,不浪费资源
drop table/index tableName/indexName purge;
讯享网
① 当然在Oracle 10g推出之后,增加了drop回闪的新特性,及flashback drop。
例子:
讯享网drop table tableName; --删除表 commit; --并且提交了
② 即使提交了,也是可以恢复的
先查看一下已经被删除的表在不在
show recyclebin;
查看drop掉的表在回收站后,准备开始用回闪,恢复
讯享网flashback table tableName to before drop; --闪回已经删除掉的表
③闪回之后,通过select进行查看,发现出现了小惊喜,删除掉的表从回收站恢复过来了。
2.彻底删除,恢复不了的那种
及在drop删除表或者索引后面 缀上purge就恢复不了了

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/42701.html