oracle如何撤回已经提交的事务

时间:2026-02-14 02:09:43

1、查询视图v$sqlarea,找到你操作那条SQL的时间。

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

SQL_TEXT就是执行的SQL语句,我就是执行了UPDATE BIZ_VEHICLEALARMTYPE......所以我就找到了执行时间为2019-07-01 15:40:31。

oracle如何撤回已经提交的事务

2、查询2019-07-01 15:40:31该时间点的表数据,看表格数据是否是执行update语句之前的数据。

select * from 表名 as of timestamp to_timestamp('2019-07-01 15:40:31', 'yyyy-mm-dd hh24:mi:ss');

oracle如何撤回已经提交的事务

3、执行下面两条SQL,即可将数据恢复到执行update之前,2019-07-01 15:40:31之前的数据。

1、alter table 表名 enable row movement;

2、flashback table 表名 to timestamp to_timestamp('2019-07-01 15:40:31', 'yyyy-mm-dd hh24:mi:ss');

© 2026 途途旅游
信息来自网络 所有数据仅供参考
有疑问请联系站长 site.kefu@gmail.com