使用PURGE語句從回收站中清除表,索引,已刪除的表空間或者整個回收站,並釋放與對象關聯的所有空間.PURGE語句不能回滾,清除以後也不能恢復.
查詢 USER_RECYCLEBIN
數據字典查閱回收站內容,也使用RECYCLEBIN同義詞.下面的兩個語句返回相同的行:
select * from user_recyclebin;
select * from recyclebin;
PURGE語句的語法:
語義:
TABLE or INDEX
指定想要清除回收站中的表或索引的名字,可以指定原來用戶指定的名稱或者刪除對象時數據庫自動分配的對象.
- 如果指定了用戶指定的名稱,並且回收站中包含不止一個該名稱的對象,那麼數據庫清除停留在回收站中最常時間的對象.
- 系統生成的回收站對象名稱是唯一的.因此,如果指定了系統生成的名稱,那麼數據庫清除指定對象.
當數據庫清除表時,所有的表分區,LOB和LOB分區,索引和其他依賴該表的對象也被清除.
RECYCLEBIN
使用這個子句清除當前用戶的回收站.數據庫將從用戶的回收站中移除所有對象,並釋放回收站中與對象關聯的所有空間.
DBA_RECYCLEBIN
該子句只有擁有SYSDBA系統對象權限纔有效。從整個系統回收站清除所有對象,相當於清除每個用戶的回收站。
TABLESPACE tablespace
使用該子句從回收站清除指定表空間駐留的所有對象。
USER user
使用該子句可以回收指定用戶在表空間中的空間。
Examples
1.使用對象原來名稱,從回收站中清除表EMP。
purge table EMP;
2.使用系統生成名稱,從回收站中清除表EMP
purge table BIN$6kHa6WY7cZzgQAB/AQAWRg==$0;
3.清除整個回收站
purge recyclebin;
4.清除指定表空間
purge tablespace users;
5.清除表空間中指定用戶的空間
purge tablespace users user scott;purge tablespace users user scott;purge tablespace users user scott;