1概念理解
ORACLE系统的临时表常被用于存放系统操作的中间数据,由于对临时的任何操作都不产生redo(但会因为修改undo而产生redo),所以临时表的数据操作效率一般都比较高。常用的临时表主要有两类,一类是基于事务的临时表,一类是基于会话的临时表,基于事务的临时表是只有当事务被提交或回滚时,临时表的数据才会被清空;基于会话的临时表是只有当会话结束时,临时表的数据才会被清空,两种类型的临时表数据都是对当前会话可见。
2基于事务的临时表
创建一张基于事务的临时表:
在这里我们创建了一张基于事务的临时表,且在创建的时候我们已经插入了数据,为什么再查询的时候就没有数据了呢?这是因为基于事务的临时表当事务回滚或提交时就立刻清空数据,而此时DDL语句操作会隐含一个commit动作,自动提交,从而触发了清空数据表。
我们再插入一次:
3基于会话的临时表
创建基于会话的临时表TEMP2:
4临时表的索引
5临时表的一些限制
时间: 2024-10-03 13:40:12