ORACLE 誤刪表、誤刪表資料後恢復
最近在工作中使用ORACLE,一個失誤刪錯了表,當時心急如焚,因為接觸ORACLE時間不長,也不清楚ORACLE的功能,
同事就去找了下恢復的解決辦法,發現ORACLE刪除表後,是換了個名字,躺到了ORALCE的回收站中。
記錄一下使用的語句,以便以後遇到。
關於ORALCE誤刪表後恢復
查看回收站的表:
select object_name,original_name,type,createtime,droptime from recyclebin;
recyclebin 回收站表名
object_name 刪除後名稱
original_name 刪除前名稱
type 刪除的型別(如index、table等)
createtime 建立表的時間
droptime 刪除表的時間
根據回收站中的資訊,找到刪除的表(original_name)對應的回收站中的名稱(object_name)
執行恢復語句:
flashback table "object_name" to before drop;
執行語句成功後,表恢復到刪除之前的狀態。
關於ORALCE誤刪表資料後恢復
恢復語句:
alter table table_name enable row movement;
flashback table table_name to timestamp to_timestamp(time,'yyyy-mm-dd hh24:mi:ss');
執行完成後,會把表中的資料恢復到time這個時間點。