临时表temporary table
Oracle 的临时表与MSSQL的不同,临时表需要先创建,不建议在运行时使用DDL语句创建!
临时表可以看作是一张普通的物理表,在其上可以建索引、建视图,建触发器等!但它的数据是会话隔离的。
区别之处:
l 向表中插入数据只在会话或事务期间存在
l 表中的数据只对插入数据的会话是可见的
l 可用ON COMMIT指导定数据是会话专用还是事务专用
临时表的限定:
l 临时表不能被分区
l 不能指定约束
l 不包括含嵌套表的列或VARRAY类型
l 不能指定TABLESPACE, STORAGE_CLAUSE, LONGGING, NOLOGGING, MONITORING, LOB_INDEX_CLAUSE等
l 不能指定SEGMENT_ATTRIBUTES_CLAUSE,NESTED_TABLE_COL_PROPERTIES或PARALLEL_CLAUSE
l 分布事务不支持临时表
临时表的创建:
create global temporary tablename(column list)
on commit preserve rows; --提交保留数据 会话临时表
on commit delete rows; --提交删除数据 事务临时表
临时表是相对于会话的,别的会话看不到该会话的数据。
oracle的临时表和sql server不一样,在使用完成以后,oracle临时表中的纪录可以被定义为自动删除(分session方式和transaction方式),而表结构不会被自动删除;sql server中的临时表在使用后会被完全删除。
所以,如果是常用的临时表,你不妨一开始就建好表。
在使用的时候,不同对话之间的纪录互相不干扰,所以不会给使用带来任何问题。
对偶尔使用的临时表,也可以在过程中用动态SQL来建立(但不建议,DDL语句有较大的开销!):
CREATE OR REPLACE PROCEDURE myProc(...) AUTHID current_user IS
...
BEGIN
EXECUTE IMMEDIATE 'CREATE GLOBAL TEMPORARY ....';
...
END;
建议:
不得已的情况下(比较复杂的数据处理)才使用临时表,否则尽可能使用子查询代替或使用游标。
临时表temporary table相关推荐
- java temporary_临时表temporary table
临时表temporary table =========================================================== 作者: xsb(http://xsb.it ...
- mysql中temporary_MySQL的复制和临时表(Temporary Table)
当你创建临时表的时候,你可以使用temporary关键字.如: create temporary table tmp_table(name varchar(10) not null,passwd ch ...
- GLOBAL TEMPORARY TABLE
转自:http://tolywang.itpub.net/index.php CREATE GLOBAL TEMPORARY TABLE TABLENAME ( COL1 VARCHAR2(10), ...
- Oracle - 临时表(GLOBAL TEMPORARY TABLE)
http://aofengblog.blog.163.com/blog/static/6317021200951664351836/ Oracle - 临时表(GLOBAL TEMPORARY TAB ...
- Oracle 临时表 (Gobal Temporary Table)
提问,插入数据之后,COMMIT,数据是否一定会在表里呢? 回答 一定会在.我认为没有错 回答 可能会在.也没有错 → 没在就一定是被删了,那么有一种表,会在Commit时,清空所有数据. 刚才说的 ...
- mysql temporary_MySQL内部临时表(Internal Temporary Table)
当某些SQL命令在MySQL数据库中被执行的时候,它可能需要先创建一些内部的临时表来完成比较复杂的排序或分组查询.MySQL的临时表分为 in-memory 和 on-disk 两种. 如有可能,My ...
- oracle 查询temporary table,Oracle临时表(Temporary Table)
GLOBAL TEMPORARY代表全局临时表 临时表的元数据存储在数据字典里面 只当第一条DML命令发生的时候才为这张表的段分配空间 临时表数据的可见范围应该是会话级别或是事务级别的 会话或者事务级 ...
- 简单聊聊MySQL临时表(TEMPORARY TABLE)
目录什么的也不需要 一.什么是临时表 二.临时表有哪些类型 1.内部临时表: 2.外部临时表: 三.对外部临时表说两句 四.执行验证 一.什么是临时表 MySQL临时表在很多场景中都会用到,MySQL ...
- mysql global temporary table_【转】MySQL Temporary Table相关问题的探究
本文转载自:http://itindex.net/detail/10901-mysql-temporary-table 问题的引入 让我们先来观察几条非常简单的MySQL语句: mysql> c ...
最新文章
- JavaScript学习记录 (三) 函数和对象
- js运动 运动效果留言本
- halcon算子翻译——dev_set_paint
- mysql 实现按首字母字典序排序以及根据字段汉字首字母搜索
- 谈谈.NET Core中基于Generic Host来实现后台任务
- spring 多线程 事务 源码解析(一)
- Java需要掌握的底层知识_Java程序员应该掌握的底层知识
- ON1 photo raw 2021(ps/lr滤镜插件) 下载及安装
- svn is already locked解决办法
- 详解:MapReduce 思想解析
- 项目关键路径与项目最长路径有可能不同
- LVS的DR模式(ldirectord的使用,keepalived配置高可用集群)
- tgp饥荒服务器mod文件在哪,wegame饥荒联机版mod在那个文件夹 | 手游网游页游攻略大全...
- 短视频去水印接口支持全网解析源码/自定义API接口
- Byte,Kb,Mb,Gb,Tb,Pb,Eb,Zb,Yb,Bb单位换算
- 2021全国人工智能大赛(NAIC)视觉编码赛道初赛一阶段baseline分享
- curly怎么读(curly怎么读音发音英语怎么说)
- 瑞星4月2日安全综述:网页挂马攻击严重
- 如何实现emoji文本字数计算?以及输入框限制指定字符数?
- 汽车销售管理系统数据库的设计与实现
热门文章
- HDU 6092 Rikka with Subset 思维 递推
- 扎克伯格又被黑,这次是他的 Pinterest 账号
- 深入实践Spring Boot1.3.2 一个简单的实例
- HashMap遍历的两种方式,推荐使用entrySet()
- java list三种遍历方法性能比較
- 一道算法题,求更好的解法
- 盛大文学推出“一人一书”计划,发布电子书战略
- Windows 7 搭建 Mobile 6 真机调试开发环境
- ASP.NET C# 货币转换函数 中文大写金额 英文金额
- 根据之前发的那SQL语句查询表结构的语句做了个MSSQL实体类生成器!