zoukankan      html  css  js  c++  java
  • Oracle12C临时表 commit 之后清空了

    Oracle11g中的临时表

    create temprorary table GTT (

    column1 varchar2(100)

    )on commit preserver rows;

    这种临时表示基于会话的,当会话断开之后就会清空临时表中的内容。

    但是在Oracle12c中这样创建临时表,当会话断开之后或者执行commit操作后就会清空临时表中的内容。

    因为Oracle12C中默认有一个参数

    temp_undo_enabled默认是false,因为这样不占用表空间,一commit就清空,所以只需要设置为true
    就可以和11g一样了。
    看如下操作:

    SQL> create global temporary table t ( x int ) on commit preserve rows;

    Table created.

    SQL>

    SQL> conn scott/tiger.

    Connected.

    SQL>

    SQL> alter session set temp_undo_enabled = true;

    Session altered.

    SQL>

    SQL> insert into t 2 select rownum 3 from dual connect by level <= 100;

    100 rows created.

    SQL>

    SQL> select count(*) from t; COUNT(*) ---------- 100

    SQL>

    SQL> commit;

    Commit complete.

    SQL>

    SQL> select count(*) from t; COUNT(*) ---------- 100

     

     

  • 相关阅读:
    bzoj2599
    在Linux下配置jdk的环境变量
    liunx 命令大全
    Liunx下如何使用kettle
    Liunx 解压篇
    Linux下安装MySQL-5.7
    Linux文件权限查看及修改命令chmod,chown
    spring 驱动模式
    Struts2标签之Checkbox
    spring 注解的优点缺点
  • 原文地址:https://www.cnblogs.com/yehuili/p/9951317.html
Copyright © 2011-2022 走看看