zoukankan      html  css  js  c++  java
  • Oracle存储过程中临时表的使用技巧

    Oracle存储过程中临时表的使用技巧
    一、Oracle临时表知识   

    在Oracle中,临时表分为SESSION(会话级)、TRANSACTION(事务级)两种,SESSION级的临时表数据在整个SESSION都存在,直到结束此次SESSION;而 TRANSACTION级的临时表数据在TRANACTION结束后消失,即COMMIT/ROLLBACK或结束SESSION都会清除 TRANACTION临时表数据。

    1. 会话级临时表 示例

      1创建

      create global temporary table temp_tbl(col_a varchar2(30))

      on commit preserve rows

    2插入数据

    insert into temp_tbl values('test session table')
    
    3提交
    
    commit;
    
    4查询
    
    select *from temp_tbl
    

    可以看到数据'test session table'记录还在。

    结束SESSION,重新登录,再查询数据select *from temp_tbl,这时候记录已不存在,因为系统在结束SESSION时自动清除记录 。

    1. 事务级临时表 示例

      1创建

      create global temporary table temp_tbl(col_a varchar2(30))

      on commit delete rows

      2插入数据

      insert into temp_tbl values('test transaction table')

      3提交

      commit ;

      4查询

      select *from temp_tbl

    这时候可以看到刚才插入的记录'test transaction table'已不存在了,因为提交时已经晴空了数据库;同样,如果不提交而直接结束SESSION,重新登录记录也不存在 。

  • 相关阅读:
    alpha冲刺1/4
    第二次作业
    第一次作业
    第一次个人作业
    第10组 Beta版本演示
    第10组 Beta冲刺(4/4)
    第10组 Beta冲刺(3/4)
    第10组 Beta冲刺(2/4)
    第10组 Beta冲刺(1/4)
    第10组 Alpha冲刺(4/4)
  • 原文地址:https://www.cnblogs.com/yclizq/p/15191938.html
Copyright © 2011-2022 走看看