1. 程式人生 > >恢復ORACLE被誤更新或刪除資料的方法

恢復ORACLE被誤更新或刪除資料的方法

今天嚇的頭疼,似乎是感冒了。本以為是在PPR環境做的操作,做完以後,定睛一看,WC,是PROD環境,嚇的我熱汗直流。下班後開始找恢復方法,終於找到了。頭疼欲裂,真的是嚇出病了。
刪除SQL如下:
–delete * FROM witmsup_WORK where WSUPREQNO=’CL180600006’;
–delete * from WITMSUP where WSUPREQNO=’CL180600006’;
–commit;
恢復SQL如下:
–INSERT INTO WITMSUP SELECT * FROM witmsup AS OF TIMESTAMP(SYSTIMESTAMP - INTERVAL ‘300’ MINUTE) where WSUPREQNO=’CL180600006’;
–INSERT INTO witmsup_WORK SELECT * FROM witmsup_WORK AS OF TIMESTAMP(SYSTIMESTAMP - INTERVAL ‘270’ MINUTE) where WSUPREQNO=’CL180600006’;
–COMMIT;
另外:
ORACLE中用select into from 不可以,拋異常ORA-00905: missing keyword
所以用-INSERT INTO * SELECT….

這裡只講了我的特殊場景的特殊寫法。具體用法有大量知識可參考。不必驚慌。