oracle数据误删后如何处理

有时候,我们的程序在写增删改查sql的时候忘记加条件了,导致不小心把表中的大量数据误删或者误改了,怎么办?

处理办法:oracle中有一个闪回的操作,就是给用户误删、误改后能够返回到原来的状态,部分语法使用如下:

1、根据时间查当时的数据(例子:查找一个小时前的数据)

select * from table_user as of timestamp sysdate-1/24

2、可以通过条件查询进行详细误删除的信息查询(例子:查找误删的用户“123456789”)

select * from table_user as of timestamp sysdate-1/24 where username='123456789'

3、获取误删除的数据(例子:还原刚才删除的用户“123456789”的信息)

insert into table_user select * from table_user as of timestamp sysdate-1/24 where username='123456789'

 4、还有更多的使用按照需求自己处理。

参考地址:https://www.cnblogs.com/zydev/p/5300399.html

posted @ 2019-07-01 20:42  masha2017  阅读(308)  评论(0编辑  收藏  举报