zoukankan      html  css  js  c++  java
  • 20.1 使用FlashBack 查询实现行级恢复

    (1) 模拟用户误操作

    SQL> conn scott/tiger@demo
    已连接。
    SQL> host date
    当前日期: 2009-02-19 星期四
    输入新日期: (年月日)

    SQL> host time
    当前时间: 16:40:43.29
    输入新时间:

    SQL> select current_scn from v$database;

    CURRENT_SCN
    -----------
        1975467

    SQL> delete from emp where deptno=30;

    已删除6行。

    SQL> commit;

    提交完成。

    (2) 使用 FlashBack 查询取得早期时间点表行数据

    SQL> select ename,sal,job,deptno from emp as of timestamp
      2  to_timestamp('2009-02-19 14:40:43','YYYY-MM-DD HH24:MI:SS')
      3  where deptno=30;

    ENAME             SAL JOB           DEPTNO
    ---------- ---------- --------- ----------
    ALLEN            1600 SALESMAN          30
    WARD             1250 SALESMAN          30
    MARTIN           1250 SALESMAN          30
    BLAKE            2850 MANAGER           30
    TURNER           1500 SALESMAN          30
    JAMES             950 CLERK             30

    已选择6行。

    SQL> select ename,sal,job,deptno from emp as of scn 1975467 where deptno=30;

    ENAME             SAL JOB           DEPTNO
    ---------- ---------- --------- ----------
    ALLEN            1600 SALESMAN          30
    WARD             1250 SALESMAN          30
    MARTIN           1250 SALESMAN          30
    BLAKE            2850 MANAGER           30
    TURNER           1500 SALESMAN          30
    JAMES             950 CLERK             30

    已选择6行。

    (3) 使用 FlashBack 查询恢复表行数据

    SQL> insert into emp select * from emp as of scn 1975467 where deptno=30;

    已创建6行。

    SQL> commit;

    提交完成。

  • 相关阅读:
    C# Linq 类似Scala中的map的函数
    Spark DataFrame NOT IN实现方法
    Scala scopt 命令行解析
    WPF 绑定到静态属性,可通知
    WPF GroupBox Header居中
    WPF开源项目整理(排名不分先后)
    Windows 上配置 Go 的 gRPC 编译环境
    C++20新线程 jthread 体验代码
    查找被删除但仍然占据磁盘的文件
    以Docker方式安装Redis集群
  • 原文地址:https://www.cnblogs.com/yiwuya/p/3018969.html
Copyright © 2011-2022 走看看