zoukankan      html  css  js  c++  java
  • 临时表学习

    temporary tables定义

    临时表中的数据只对当前Session有效,每个Session都有自己的临时数据,并且不能访问其它Session的临时表中的数据。因此,临时表不需要DML锁;

    DML操作的临时表不产生redo log重作日志,但会产生回滚日志Undo log;Undo的产生(rollback segment)会产生Redo log;

    支持索引创建(创建索引时不能另指定表空间,同时临时表中有数据时不能创建索引);

    支持指定表空间创建临时表;

    只有在没有会话使用该临时表时才支持各类DDL语句,当然TRUNCATE例外,因为TRUNCATE也只是清除当前会话数据;

    类别

    1. 会话级临时表

    当用户退出会话结束的时候,Oracle自动清除临时表中数据。

    保存一个会话SESSION的数据

    PRESERVE ROWS

    2. 事务级临时表

    当一个事务结束(commit or rollback),Oracle自动清除临时表中数据.
    保存在一个事务中需要的数据

    DELETE ROWS

    默认(未指定事务级/会话级)创建的临时表为事务级临时表;

    创建语法

    --会话级

    create global temporary table g_tmp3(id int) on commit preserve rows;

    --事务级

    create global temporary table g_tmp2(id int) on commit delete rows;

  • 相关阅读:
    SpringMVC框架搭建
    java事务的概念
    SpringMVC框架
    JAVA多线程面试题
    MD5加密
    java对象和xml的转换
    eclipse环境配置
    关于枚举类的使用
    定时器的使用
    关于AS-OS
  • 原文地址:https://www.cnblogs.com/bowshy/p/3550912.html
Copyright © 2011-2022 走看看