zoukankan      html  css  js  c++  java
  • [bbk4785] 第33集 第三章 Flashback Table 10

    /************************************************************************************/

    实验目的:使用DBMS_FLASHBACK.TRANSACTION_BACKOUT回退事务

    实验步骤:

      1、emp-insert into-empno=1

      2、emp-insert into-empno=2

      3、flashback transaction query--定位

      4、flashback transaction--recover

    /************************************************************************************/

    SQL> conn SCOTT/TIGER
    Connected.
    SQL> create table emp3 as select * from emp;
    
    Table created.
    
    SQL> select empno,ename,sal from emp3;
    
         EMPNO ENAME             SAL
    ---------- ---------- ----------
          7369 SMITH             800
          7499 ALLEN            1600
          7521 WARD             1250
          7566 JONES            2975
          7654 MARTIN           1250
          7698 BLAKE            2850
          7782 CLARK            2450
          7788 SCOTT            3000
          7839 KING             5000
          7844 TURNER           1500
          7876 ADAMS            1100
    
         EMPNO ENAME             SAL
    ---------- ---------- ----------
          7900 JAMES             950
          7902 FORD             3000
          7934 MILLER           1300
    
    14 rows selected.
    
    SQL> insert into emp3(empno,ename,sal) values(1,'zhangsan1',10);
    
    1 row created.
    
    SQL> commit;
    
    Commit complete.
    
    SQL> insert into emp3(empno,ename,sal) values(2,'zhangsan2',20);
    
    1 row created.
    
    SQL> commit;
    
    Commit complete.
    SQL> select xid,to_char(commit_timestamp,'yyyy-mm-dd hh24:mi:ss') commit_timestamp,operation,undo_sql from flashback_transaction_query where table_owner = 'SCOTT' and table_name = 'EMP3';
    
    XID              COMMIT_TIMESTAMP    OPERATION    UNDO_SQL
    ---------------- ------------------- ------------ ----------------------------------------
    02000B00F9080000 2013-05-17 19:44:16 INSERT       delete from "SCOTT"."EMP3" where ROWID =
                                                       'AAATn7AAEAAABCFAAA';
    
    07001D0020080000 2013-05-17 19:44:34 INSERT       delete from "SCOTT"."EMP3" where ROWID =
                                                       'AAATn7AAEAAABCFAAB';
    SQL> conn /as sysdba
    Connected.
    SQL> 
    1 DECLARE 2 V_XID sys.XID_ARRAY; 3 BEGIN 4 V_XID :=SYS.XID_ARRAY('07001D0020080000'); 5 DBMS_FLASHBACK.TRANSACTION_BACKOUT(1,V_XID); 6* END; SQL> / PL/SQL procedure successfully completed.
    SQL> commit;
    
    Commit complete.
  • 相关阅读:
    获取linux内核的配置项(包含模块module)_转
    PPP或PPPOE身份验证PAP和CHAP
    iptables用法
    谁能当IBM公司的CEO?
    雷军失势小米痛哭_小米总喜欢花小钱办大事,然后就总是办不好事
    高并发TCP连接数目问题
    Linux定时任务Crontab命令详解_转
    树莓派3B+首次登陆通过网络
    tar包解压后用户名改变
    一些软件设计的原则_转
  • 原文地址:https://www.cnblogs.com/arcer/p/3084324.html
Copyright © 2011-2022 走看看