Oracle-闪回

1.

insert into test
select  *  from test as of timestamp  to_timestamp ('2014-04-11 15:00:00', 'yyyy-MM-dd HH24:mi:SS')

 

下面转自:http://zhidao.baidu.com/link?url=mQSsfnMoA4BFc9B6po9VVrl43jY3mzRUYxqpQGpJ6kSCrl7v9VLTuWiHjlB0t627n54hAVqMDIuNpALvyGBJza

 

/*1.FLASHBACK QUERY*/

--闪回到15分钟前
select *  from orders  as of timestamp (systimestamp - interval ''15'' minute)  where ......
这里可以使用DAY、SECOND、MONTH替换minute,例如:
SELECT * FROM orders AS OF TIMESTAMP(SYSTIMESTAMP - INTERVAL ''2'' DAY)

--闪回到某个时间点
select  *  from orders  as of timestamp  to_timestamp (''01-Sep-04 16:18:57.845993'', ''DD-Mon-RR HH24:MI:SS.FF'') where ...

--闪回到两天前
select * from orders  as of timestamp (sysdate - 2) where.........

/*2.FLASHBACK DROP*/

  1.flashback table orders to before drop;
 
  2.如果源表已经重建,可以使用rename to子句:
  flashback table order to before drop  rename to order_old_version;
 
/*3.FLASHBACK TABLE*/

  1.首先要启用行迁移:
  alter table order enable row movement;
  2.闪回表到15分钟前:
  flashback table order  to timestamp systimestamp - interval ''15'' minute;
    闪回到某个时间点:
  FLASHBACK TABLE order TO TIMESTAMP    TO_TIMESTAMP('2007-09-12 01:15:25 PM','YYYY-MM-DD HH:MI:SS AM')

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值