Oracle创建临时表

您所在的位置:网站首页 创建临时表语句的命令 Oracle创建临时表

Oracle创建临时表

2024-06-03 07:36| 来源: 网络整理| 查看: 265

Oracle临时表

临时表是一种特殊的表。当需要对某一(也可以是多个)表中的一批数据进行反复的操作时,通过为这批数据创建一个临时表,可能会简化操作并且有可能提高效率。

语法: CREATE GLOBAL TEMPORARY TABLE 临时表空间名 ON COMMIT DELETE ROWS ON COMMIT PRESERVE ROWS (colum,colum,…);

子句说明:

ON COMMIT DELETE ROWS : (说明数据行只有在当前事务中可见,也是默认值,事务提交后数据行将消失)ON COMMIT PRESERVE ROWS :(说明数据行仅在当前会话中可见)

实例: 使用ON COMMIT PRESERVE ROWS根据emp_tran表创建一个仅当前会话可见的临时表

CREATE GLOBAL TEMPORARY TABLE emp_temp ON COMMIT PRESERVE ROWS AS SELECT * FROM emp_tran; Table created.

查询验证:

SQL> select * from emp_temp; EMPNO ENAME JOB SAL ---------------- ------------------ -------------------- 7369 SMITH CLERK 3500 7876 ADAMS CLERK 3500 7900 JAMES CLERK 2000 3 rows selected.

查询验证临时表是否使用表空间:

SELECT table_name, tablespace_name, temporary FROM dba_tables WHERE owner = 'NICE'; TABLE_NAME TABLESPACE_NAME TEMPORARY ---------- --------------------------- ------------------ …… EMP_TEMP Y CLASSINFO DATA_TABLEONE N 8 rows selected. SQL>

结果显示:表emp_temp为临时表,因为最后一列值为Y,而该表也没有放在该用户默认表空间USERS中,所以该临时表表使用的是临时段。



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3