oracle恢复删除表

oracle表删除后的表/数据恢复

  • 查看删除的表

    select * from user_recyclebin where DROPTIME >'2013-09-02 00:00:00';
    • 会看到第一个列为OBJECT_NAME,这个就是删除表的名字,使用时要用这个表名
  • 恢复表

    flashback Table "BIN$5WCRYXHwI6/gQBKsPzBBtw==$0" to before drop
    • 如果删除表后又重新生成了,那么此时名字已被占用,是无法恢复的,那恢复的方法是得到删除的表的内容,然后插入到已经有的表中
  • 查找删除表的数据

    select * from "OBJCET_NAME" as of timestamp to_timestamp('2013-12-05 16:43:00','YYYY-MM-DD HH24:MI:SS');
    • 从删除表中的后面可以看到删除时间,上面的sql中的时间要比删除时间早,应该是个时间段,tablename是OBJCET_NAME列中的名字
  • 将删除的数据恢复(插入)到已有的表中

    insert into myTable select * from "OBJCET_NAME" as of timestamp to_timestamp('2013-12-05 16:43:00','YYYY-MM-DD HH24:MI:SS');
    • 注意这种插入的恢复后,id不会是以前的id了,或者将删除后生成的重名表在此删除,然后按照时间找到第一次删除的表,然后直接恢复整个表。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值