zoukankan      html  css  js  c++  java
  • Oracle批量恢复drop操作删除的表、索引等对象

    /**********************************************************************
    查询Drop操作删除的对象select * from recyclebin ;
    单个对象(表、索引或是通过drop操作删除的其它对象)恢复
    flashback table(被删除的对象类型) 被删除的对象名称 to before drop
    ***********************************************************************/
    --Demo单张表恢复
    flashback table Table_XXX to before drop;
    -- 创建批量恢复表的存储过程
    create or replace procedure RecoveryOfTable is
    begin
    declare
    /***********************************************************************
    select 'flashback table '||a.original_name||' to before drop' from
    recyclebin a where a.operation = 'DROP' and a.type='TABLE'
    恢复其它类型对象请将flashback table 这里换为其它类型,
    type='相应的类型'可加更多条件限制,具体查询recyclebin
    ***********************************************************************/
    cursor cur_flashback is select 'flashback table '||a.original_name||' to before drop' from
    recyclebin a where a.operation = 'DROP' and a.type='TABLE';
    v_name varchar2(4000);
    begin
    open cur_flashback;
    fetch cur_flashback into v_name;
    while cur_flashback%found
    loop
    execute immediate v_name;
    fetch cur_flashback into v_name;
    end loop;
    dbms_output.put_line('恢复成功!');
    close cur_flashback;
    end;
    end;
    --执行存储过程(使用plsql操作时)
    begin
    RecoveryOfTable;
    end;
    --执行存储过程(使用SQL调用)
    execute RecoveryOfTable;

  • 相关阅读:
    Run
    axios+Qs请求数据转表单格式
    Vue开发电子书app
    vue2.5开发去哪儿了流程
    ES6重度学习 demo实例
    JS 数组, 对象的增查改删(多语法对比)
    格式化时间戳的n种方法
    Vue中你忽略的点
    vscode代码格式化
    分隔符
  • 原文地址:https://www.cnblogs.com/MFLY/p/3467038.html
Copyright © 2011-2022 走看看