WEB开发网      婵犻潧鍊婚弲顐︽偟椤栨稓闄勯柦妯侯槸閻庤霉濠婂骸浜剧紒杈ㄥ笚閹峰懘鎮╅崹顐ゆ殸婵炴垶鎸撮崑鎾趁归悩鐑橆棄闁搞劌瀛╃粋宥夘敃閿濆柊锕傛煙鐎涙ê鐏f繝濠冨灴閹啴宕熼鍡╀紘婵炲濮惧Λ鍕叏閳哄懎绀夋繛鎴濈-楠炪垽鎮归崶褍妲婚柛銊ュ缁傚秹鏁撻敓锟� ---闂佹寧娲╅幏锟�
开发学院数据库Oracle Oracle Recyclebin 阅读

Oracle Recyclebin

 2008-09-02 12:45:26 来源:WEB开发网 闂侀潧妫撮幏锟�闂佸憡鍨电换鎰版儍椤掑倵鍋撳☉娆嶄沪缂傚稄鎷�婵犫拃鍛粶闁靛洤娲ㄩ埀顒佺⊕閵囩偟绱為敓锟�闂侀潧妫撮幏锟�  闂佺ǹ绻楀▍鏇㈠极閻愬灚瀚梺鍨儏閳ь剙绉归弻銊р偓闈涙啞閻h京鈧敻鍋婇崰鏍х暦閿燂拷
核心提示: 诸如 SCOTT 等用户可以使用以下命令来清空自己的回收站,PURGERECYCLEBIN;DBA 可以使用以下命令清除任何表空间中的所有对象PURGEDBA_RECYCLEBIN;可以看到,Oracle Recyclebin(4),可以通过多种不同方法来管理回收站,以满足特定的需要,使用

诸如 SCOTT 等用户可以使用以下命令来清空自己的回收站。

PURGERECYCLEBIN;

DBA 可以使用以下命令清除任何表空间中的所有对象

PURGEDBA_RECYCLEBIN;

可以看到,可以通过多种不同方法来管理回收站,以满足特定的需要。

表版本和闪回功能

用户可能会经常多次创建和删除同一个表,如:

createTABLETEST(COL1NUMBER); 
  insertINTOTESTVALUES(1); 
  commit; 
  dropTABLETEST; 
  createTABLETEST(COL1NUMBER); 
  insertINTOTESTVALUES(2); 
  commit; 
  dropTABLETEST; 
  createTABLETEST(COL1NUMBER); 
  insertINTOTESTVALUES(3); 
  commit; 
  dropTABLETEST;

此时,如果您要对表 TEST 执行闪回操作,那么列 COL1 的值应该是什么?常规想法可能认为从回收站取回表的第一个版本,列 COL1 的值是 1。实际上,取回的是表的第三个版本,而不是第一个。因此列 COL1 的值为 3,而不是 1。

此时您还可以取回被删除表的其他版本。但是,表 TEST 的存在不允许出现这种情况。您有两种选择:

使用重命名选项:

FLASHBACKTABLETESTTOBEFOREdroprenameTOTEST2; 
  FLASHBACKTABLETESTTOBEFOREdroprenameTOTEST1;

这些语句将表的第一个版本恢复到 TEST1,将第二个版本恢复到 TEST2。 TEST1 和 TEST2 中的列 COL1 的值将分别是 1 和 2。或者,

使用表的特定回收站名称进行恢复。为此,首先要识别表的回收站名称,然后执行: 

FLASHBACKTABLE"BIN$04LhcpnoanfgMAAAAAANPw==$0"TOBEFOREdroprenameTOTEST2; 
  FLASHBACKTABLE"BIN$04LhcpnqanfgMAAAAAANPw==$0"TOBEFOREdroprenameTOTEST1;

上一页  1 2 3 4 5  下一页

Tags:Oracle Recyclebin

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接