您的位置:首页 > 数据库 > Oracle

Oracle临时表(Temporary Table)

2015-06-27 00:08 671 查看
GLOBAL TEMPORARY代表全局临时表
临时表的元数据存储在数据字典里面

只当第一条DML命令发生的时候才为这张表的段分配空间

临时表数据的可见范围应该是会话级别或是事务级别的

会话或者事务级别又建表时的ON COMMIT关键字决定,ON COMMIT DELETE ROWS代表事务级别,ON COMMIT PERSERVE ROWS代表会话级别

DDL命令只在临时表与会话断开绑定之后才可以运行

对于会话级别,当TRUNCATE命令发生时会话与临时表间的绑定也就断开了;而对于事务级别,在ROLLBACK或者COMMIT

Oracle临时表的一些限制:
■ Temporary tables cannot be partitioned, clustered, or index organized.
■ You cannot specify any foreign key constraints on temporary tables.
■ Temporary tables cannot contain columns of nested table.
■ You cannot specify the following clauses of the LOB_storage_clause:
TABLESPACE, storage_clause, or logging_clause.
■ Parallel UPDATE, DELETE and MERGE are not supported for temporary tables.
■ You cannot specify the nested_table_col_properties or parallel_
clause.
■ The only part of the segment_attributes_clause you can specify for a
temporary table is TABLESPACE.
■ Distributed transactions are not supported for temporary tables.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: