oracle数据库产生误操作,将一个字段置空了,恢复数据

工作的时候没仔细检查sql直接执行了,将线上的数据弄错了,发现抓紧修改,还好只修改了一个表的一列;

在网上查了下oracle可以查询24小时任何时刻的数据

select * from btgl_ylbt_sqb t as of timestamp to_timestamp('2018-01-24 10:56:00','yyyy-mm-dd hh24:mi:ss'); --查询到此时数据

--将这列恢复到这个时刻

update btgl_ylbt_sqb sqb
   set sqb.duration =
       (select duration from btgl_ylbt_sqb as of timestamp to_timestamp('2018-01-24 10:56:00','yyyy-mm-dd hh24:mi:ss') a
         where sqb.uuid = a.uuid);

万幸是有解决的方法,要不这就是事故啊!

posted @ 2018-01-24 15:53  Nan丶G  阅读(724)  评论(0编辑  收藏  举报