--1.查询之前时间点的表数据
select * from mlkgl as of timestamp to_timestamp('2020-12-23 15:00:00', 'yyyy-mm-dd hh24:mi:ss');
--2.闪回表恢复到插入数据之前的时间点
flashback table mlkgl to timestamp to_timestamp('2020-12-23 15:00:00','yyyy-mm-dd hh24:mi:ss');
--3.删除当前表数据
delete from mlkgl;
--4.插入之前时间点的数据
insert into mlkgl select * from mlkgl as of timestamp to_timestamp('2020-12-23 15:00:00', 'yyyy-mm-dd hh24:mi:ss');
select * from mlkgl;
--FLASHBACK TABLE语句的用法主要分成两大类:从撤销数据中闪回和从回收站中闪回。其中从撤销数据中闪回必须要启用表的行移动,用户要有SELECT ANY FLASHBACK系统权限。为了查询闪回事务,用户要有SELECT ANY TRANSACTION系统对象权限。
--使用DBA用户给scott用户权限
GRANT FLASHBACK ANY TABLE TO SCOTT;
GRANT SELECT ANY TRANSACTION TO SCOTT;
oracle 误删表数据,还原到某个时间点
最新推荐文章于 2024-10-21 16:59:42 发布
本文介绍了如何使用SQL语句查询指定时间点的表数据、闪回表至特定时间点、删除现有表数据并恢复到之前的记录状态。此外,还讨论了闪回表操作所需的系统权限配置。
1284

被折叠的 条评论
为什么被折叠?



