Oracle update 執行更新操作后的數據恢復


操作數據庫,經常會出現誤操作,昨天執行的更新操作之后發現更新錯了,只能想辦法數據恢復了,現在整理一下

第一步:查詢執行更新操作的時間

select r.FIRST_LOAD_TIME,r.* from v$sqlarea r order by r.FIRST_LOAD_TIME desc ;

執行上面那條SQL語句,在下圖的SQL_TEXT字段找到你執行更新操作的那條更新語句,找到更新操作時間

第二步:創建一張新表,把數據恢復到新創建的表里

create table t_table_recove --新表
as
select * from table1--你操作的那張表 
as 
of timestamp to_timestamp('2016-08-25/11:20:09','yyyy-mm-dd hh24:mi:ss'); --執行更新操操作的時間

第三步:恢復數據(table1是你執行更新操作的那張表

delete  table1;--將原表的數據全部刪除
insert into table1 select * from t_table_recove;--恢復數據

第四步:查詢一下,你更新的數據又還原了

select * from table1

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM