oracle 回收站

Posted simplelil

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 回收站相关的知识,希望对你有一定的参考价值。

回收站,顾名思义,它就是存储被删掉的东西。从原理上来说就是一个数据字典表,放置用户删除(drop)掉的数据库对象信息。用户进行删除操作的对象并没有被数据库删除,仍然会占用空间。除非是由于用户手工进行Purge或者因为存储空间不够而被数据库清掉。数据库有了这样的功能,能够减少很多不必要的麻烦。

如果一个表被删除,那么与该表有关联的对象,例如索引、约束和其他依赖对象都会在前面加bin$$这个前缀。

 

查看回收站状态:

返回结果是on,就是回收站打开。

返回结果是off,就是回收站关闭。

SELECT Value FROM V$parameter WHERE Name = recyclebin; 

 

对系统和会话级的回收站,打开关闭。

--打开系统级回收站
ALTER SYSTEM SET recyclebin = ON;      

--打开会话级回收站 
ALTER SESSION SET recyclebin = ON;      
 
--关闭系统级回收站
ALTER SYSTEM SET recyclebin = OFF;      
 
--关闭会话级回收站
ALTER SESSION SET recyclebin = OFF; 

 

查看回收站里的内容:

SELECT * FROM RECYCLEBIN;      
 
SELECT * FROM USER_RECYCLEBIN;      
 
SELECT * FROM DBA_RECYCLEBIN; 

 

恢复回收站内对象:

FLASHBACK TABLE <<Dropped_Table_Name>> TO BEFORE DROP RENAME TO <<New_Table_Name>>

备注:这里的RENAME是给删除的对象进行重新命名,是一个可选命令。

 

删除回收站内容:

1.删除表

PURGE TABLE <<Table_NAME>>;

2.删除索引

PURGE INDEX <<Index_NAME>>; 

3.删除表空间相关对象

PURGE TABLESPACE<<Table_NAME>>; 

4.删除特定用户表空间相关对象

PURGE TABLESPACE<<Table_NAME>> USER <<User_Name>>; 

5.清空回收站

PURGE RECYCLEBIN; 

6.彻底删除表

DROP TABLE <<Table_Name>> PURGE; 

 

以上是关于oracle 回收站的主要内容,如果未能解决你的问题,请参考以下文章

如何将回收器视图添加到片段

如何在 Recyclerview Item Click 上打开新片段?

从firebase检索图像以在片段中的回收器视图时出错

如何将数据从回收器适配器发送到片段 |如何从 recyclerview 适配器调用片段函数

如何在recyclerview不同的项目点击上打开几个不同的片段?

将值从回收器适配器传递到android中的片段