欢迎来到天天文库
浏览记录
ID:34724959
大小:89.18 KB
页数:5页
时间:2019-03-10
《oracle临时表简单介绍》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、2003年1月17日星期五11:31TemporaryTables临时表目录1简介2详细介绍3建立临时表4与SQLSERVER的异同1简介ORACLE数据库除了可以保存永久表外,还可以建立临时表temporarytables。这些临时表用来保存一个会话SESSION的数据,或者保存在一个事务中需要的数据。当会话退出或者用户提交commit和回滚rollback事务的时候,临时表的数据自动清空,但是临时表的结构以及元数据还存储在用户的数据字典中。Inadditiontopermanenttables,Oracle
2、cancreatetemporarytablestoholdsession-privatedatathatexistsonlyforthedurationofatransactionorsession.TemporarytablesaresupportedbyOracle9iandOracle8i.2详细介绍Oracle临时表分为会话级临时表和事务级临时表。会话级临时表是指临时表中的数据只在会话生命周期之中存在,当用户退出会话结束的时候,Oracle自动清除临时表中数据。事务级临时表是指临时表中的数据只在事务生
3、命周期中存在。当一个事务结束(commitorrollback),Oracle自动清除临时表中数据。临时表中的数据只对当前Session有效,每个Session都有自己的临时数据,并且不能访问其它Session的临时表中的数据。因此,临时表不需要DML锁。TheCREATEGLOBALTEMPORARYTABLEstatementcreatesatemporarytablethatcanbetransaction-specificorsession-specific.For52003年1月17日星期五11:31
4、transaction-specifictemporarytables,dataexistsforthedurationofthetransaction.Forsession-specifictemporarytables,dataexistsforthedurationofthesession.Datainatemporarytableisprivatetothesession.Eachsessioncanonlyseeandmodifyitsowndata.DMLlocksarenotacquiredont
5、hedataofthetemporarytables.TheLOCKstatementhasnoeffectonatemporarytable,becauseeachsessionhasitsownprivatedata.当一个会话结束(用户正常退出用户不正常退出ORACLE实例崩溃)或者一个事务结束的时候,Oracle对这个会话的表执行TRUNCATE语句清空临时表数据.但不会清空其它会话临时表中的数据.ATRUNCATEstatementissuedonasession-specifictemporaryt
6、abletruncatesdatainitsownsession.Itdoesnottruncatethedataofothersessionsthatareusingthesametable.DMLstatementsontemporarytablesdonotgenerateredologsforthedatachanges.However,undologsforthedataandredologsfortheundologsaregenerated.Datafromthetemporarytableisa
7、utomaticallydroppedinthecaseofsessiontermination,eitherwhentheuserlogsofforwhenthesessionterminatesabnormallysuchasduringasessionorinstancefailure.你可以索引临时表和在临时表基础上建立视图.同样,建立在临时表上的索引也是临时的,也是只对当前会话或者事务有效.临时表可以拥有触发器.Youcancreateindexesfortemporarytablesusingthe
8、CREATEINDEXstatement.Indexescreatedontemporarytablesarealsotemporary,andthedataintheindexhasthesamesessionortransactionscopeasthedatainthetemporarytable.Youcancreateviewsthataccessbothtemporarya
此文档下载收益归作者所有