ITPub博客

首页 > 数据库 > Oracle > oracle 9i 闪回

oracle 9i 闪回

原创 Oracle 作者:gaoyj1973 时间:2007-03-30 08:42:43 0 删除 编辑

今天一个同事错误删除了一些记录,已经有15分钟了,我们只能尝试着使用9i的闪回功能,看看能否将记录"拿回来":

首先将删除的记录存放在一个临时表中

create table tm_gaogao as select * from tf_r_simcard as of timestamp(systimestamp - interval'1200' second);

然后挑出错误删除的记录,插回原表

insert into tf_r_simcard select * from tm_gaogao where simcardid like '5555%' ;

搞定。

以下是oracle文档中其他闪回sql:

INSERT INTO employee
(SELECT * FROM employee AS OF
TIMESTAMP (SYSTIMESTAMP - INTERVAL '60' MINUTE))
MINUS SELECT * FROM employee);
CREATE VIEW hour_ago AS
SELECT * FROM employee AS OF
TIMESTAMP (SYSTIMESTAMP - INTERVAL '60' MINUTE);
INSERT INTO employee
(SELECT * FROM employee AS OF TIMESTAMP
TO_TIMESTAMP('2003-04-04 09:30:00', 'YYYY-MM-DD HH:MI:SS')
WHERE name = 'JOHN');

这是我使用闪回功能恢复的时间最长的数据,写在这里做个纪念。

[@more@]

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/267897/viewspace-907571/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: ORA-00984 错误
请登录后发表评论 登录
全部评论

注册时间:2012-08-30

  • 博文量
    40
  • 访问量
    369689