zoukankan      html  css  js  c++  java
  • [bbk4766] 第29集 第三章 Flashback Table 06

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

    实验目的:验证在sys用户下创建的表,无法实现flashback table功能

    实验步骤:

      1、sys->create table emp -> 7369 900

      2、error->update --7369 900-1900

      3、定位错误--flashback version query

      4、recover->flashback table

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

    1、登陆、建表、验证查询

    USER is "SCOTT"
    SQL> conn /as sysdba
    Connected.
    SQL> create table emp as select * from SCOTT.emp;
    
    Table created.
    
    SQL> desc emp;
     Name                                                  Null?    Type
     ----------------------------------------------------- -------- ------------------------------------
     EMPNO                                                          NUMBER(4)
     ENAME                                                          VARCHAR2(10)
     JOB                                                            VARCHAR2(9)
     MGR                                                            NUMBER(4)
     HIREDATE                                                       DATE
     SAL                                                            NUMBER(7,2)
     COMM                                                           NUMBER(7,2)
     DEPTNO                                                         NUMBER(2)
    
    SQL> select empno,ename,sal from emp;
    
         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> select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') current_date from dual;
    
    CURRENT_DATE
    -------------------
    2013-05-17 11:26:27
    SQL> update emp set sal=1900 where empno=7369;
    
    1 row updated.
    
    SQL> commit;
    
    Commit complete.
    SQL> select empno,ename,sal from emp
      2  as of timestamp to_date('2013-05-17 11:26:27','yyyy-mm-dd hh24:mi:ss');
    
         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> flashback table emp to timestamp to_date('2013-05-17 11:26:27','yyyy-mm-dd hh24:mi:ss');
    flashback table emp to timestamp to_date('2013-05-17 11:26:27','yyyy-mm-dd hh24:mi:ss')
                    *
    ERROR at line 1:
    ORA-08185: Flashback not supported for user SYS

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

    实验目的:验证建立在sys用户下的表,即使没有建立在sys tablespace下,但是是以sys身份创建的,同样也无法使用flashback table功能闪回表

    实验步骤:

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

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

    实验目的:验证非sys用户,创建表时创建在sys tablespace上,是否可以使用flashback table功能?

    实验步骤:

    实验结论:可以

          flashback table功能是以schema为参考依据,而不是以tablespace为参考. 

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

  • 相关阅读:
    PHP学习笔记:APACHE配置虚拟目录、一个站点使用多域名配置方式
    转载:分页原理+分页代码+分页类制作
    PHP学习笔记:数据库学习心得
    PHP学习笔记:用mysqli连接数据库
    PHP学习笔记:MySQL数据库的操纵
    PHP学习笔记:利用时间和mt_rand函数获取随机名字
    PHP学习笔记:等比例缩放图片
    前端学习(一) html介绍和head标签
    Python 协程
    Python 线程----线程方法,线程事件,线程队列,线程池,GIL锁,协程,Greenlet
  • 原文地址:https://www.cnblogs.com/arcer/p/3083424.html
Copyright © 2011-2022 走看看