oracle誤刪表如何將數(shù)據(jù)恢復?很多朋友對于oracle誤刪表的情況很慌張,擔心數(shù)據(jù)沒有了,其實還是有辦法能將數(shù)據(jù)恢復的,下面小編就給大家分享一下oracle誤刪表恢復數(shù)據(jù)的方法,需要的朋友可以參考了解看看。
Oracle誤刪表如何數(shù)據(jù)恢復?
首先確定刪除數(shù)據(jù)的時間點,如果時間不正確,可能會導致找回的數(shù)據(jù)不全;
如:我刪除的時間是2018-09-28 11:30:00到2018-09-28 11:34:00之間,因為不確定具體時間,我選擇2018-09-28 11:30:00,而且之間我沒有進行其他的(除這次刪除外)數(shù)據(jù)插入和刪除操作,所以通過這個時間點找回的數(shù)據(jù)不會存在不全的情況
然后根據(jù)時間找到刪除的數(shù)據(jù);
select * from AT_PP_WORKINSTRUCTION as of timestamp to_timestamp('2018-09-28 11:30:00', 'yyyy-mm-dd hh24:mi:ss')
where Inst_Name_s like 'GL6%';
通過這個sql:select * from 刪除數(shù)據(jù)的表名 as of timestamp to_timestamp(‘刪除數(shù)據(jù)之前的時間點’, ‘yyyy-mm-dd hh24:mi:ss’) 找到你刪除之前的數(shù)據(jù),然后加上刪除的條件,例如where Inst_Name_s like ‘GL6%’ 找到刪除的數(shù)據(jù)
最后將刪除的數(shù)據(jù)插入到被刪除數(shù)據(jù)的表中即可。
insert into AT_PP_WORKINSTRUCTION (select * from AT_PP_WORKINSTRUCTION as of timestamp to_timestamp('2018-09-28 11:30:00',
'yyyy-mm-dd hh24:mi:ss') where Inst_Name_s like 'GL6%')