Oracle误删表如何数据恢复?
首先确定删除数据的时间点,如果时间不正确,可能会导致找回的数据不全;
如:我删除的时间是2018-09-28 11:30:00到2018-09-28 11:34:00之间,因为不确定具体时间,我选择2018-09-28 11:30:00,而且之间我没有进行其他的(除这次删除外)数据插入和删除操作,所以通过这个时间点找回的数据不会存在不全的情况
然后根据时间找到删除的数据;
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 删除数据的表名 as of timestamp to_timestamp('删除数据之前的时间点', 'yyyy-mm-dd hh24:mi:ss') 找到你删除之前的数据,然后加上删除的条件,例如where Inst_Name_s like 'GL6%' 找到删除的数据
最后将删除的数据插入到被删除数据的表中即可。
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%')
推荐教程:《Oracle教程》