新聞中心
臨時(shí)表的創(chuàng)建:

成都創(chuàng)新互聯(lián)主要從事成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)那坡,10多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專(zhuān)業(yè),歡迎來(lái)電咨詢(xún)建站服務(wù):13518219792
創(chuàng)建Oracle 臨時(shí)表,可以有兩種類(lèi)型的臨時(shí)表:
1、會(huì)話(huà)級(jí)的臨時(shí)表
2、事務(wù)級(jí)的臨時(shí)表
1) 會(huì)話(huà)級(jí)的臨時(shí)表因?yàn)檫@這個(gè)臨時(shí)表中的數(shù)據(jù)和你的當(dāng)前會(huì)話(huà)有關(guān)系,當(dāng)你當(dāng)前SESSION 不退出的情況下,臨時(shí)表中的數(shù)據(jù)就還存在,而當(dāng)你退出當(dāng)前SESSION 的時(shí)候,臨時(shí)表中的數(shù)據(jù)就全部沒(méi)有了,當(dāng)然這個(gè)時(shí)候你如果以另外一個(gè)SESSION 登陸的時(shí)候是看不到另外一個(gè)SESSION 中插入到臨時(shí)表中的數(shù)據(jù)的。即兩個(gè)不同的SESSION 所插入的數(shù)據(jù)是互不相干的。當(dāng)某一個(gè)SESSION 退出之后臨時(shí)表中的數(shù)據(jù)就被截?cái)?truncate table ,即數(shù)據(jù)清空)了。會(huì)話(huà)級(jí)的臨時(shí)表創(chuàng)建方法:
Create Global Temporary Table Table_Name
(Col1 Type1,Col2 Type2...) On Commit Preserve Rows ;
舉例:
create global temporary table Student
(Stu_id Number(5),
Class_id Number(5),
Stu_Name Varchar2(8),
Stu_Memo varchar2(200)) on Commit Preserve Rows ;
2) 事務(wù)級(jí)臨時(shí)表是指該臨時(shí)表與事務(wù)相關(guān),當(dāng)進(jìn)行事務(wù)提交或者事務(wù)回滾的時(shí)候,臨時(shí)表中的數(shù)據(jù)將自行被截?cái)?,其他的?nèi)容和會(huì)話(huà)級(jí)的臨時(shí)表的一致(包括退出SESSION 的時(shí)候,事務(wù)級(jí)的臨時(shí)表也會(huì)被自動(dòng)截?cái)?。事務(wù)級(jí)臨時(shí)表的創(chuàng)建方法:
Create Global Temporary Table Table_Name
(Col1 Type1,Col2 Type2...) On Commit Delete Rows ;
舉例:
create global temporary table Classes
(Class_id Number(5),
Class_Name Varchar2(8),
Class_Memo varchar2(200)) on Commit delete Rows ;
3) 兩中類(lèi)型臨時(shí)表的區(qū)別
會(huì)話(huà)級(jí)臨時(shí)表采用 on commit preserve rows ;而事務(wù)級(jí)則采用 on commit delete rows ;用法上,會(huì)話(huà)級(jí)別只有當(dāng)會(huì)話(huà)結(jié)束臨時(shí)表中的數(shù)據(jù)才會(huì)被截?cái)?,而且事?wù)級(jí)臨時(shí)表則不管是 commit 、 rollback 或者是會(huì)話(huà)結(jié)束,臨時(shí)表中的數(shù)據(jù)都將被截?cái)?/p>
4 )什么時(shí)候使用臨時(shí)表
1 )、當(dāng)某一個(gè) SQL 語(yǔ)句關(guān)聯(lián)的表在 2 張及以上,并且和一些小表關(guān)聯(lián)。可以采用將大表進(jìn)行分拆并且得到比較小的結(jié)果集合存放在臨時(shí)表中
2 )、程序執(zhí)行過(guò)程中可能需要存放一些臨時(shí)的數(shù)據(jù),這些數(shù)據(jù)在整個(gè)程序的會(huì)話(huà)過(guò)程中都需要用的等等。
通過(guò)上文中的介紹相信現(xiàn)在大家對(duì)Oracle臨時(shí)表的創(chuàng)建已經(jīng)不陌生,只要大家經(jīng)常練習(xí),就一定能夠很熟練的掌握Oracle臨時(shí)表的創(chuàng)建方法。
【編輯推薦】
- oracle時(shí)間的加法和減法
- Oracle數(shù)據(jù)泵導(dǎo)出導(dǎo)入與傳統(tǒng)導(dǎo)出導(dǎo)入的區(qū)別
- Oracle權(quán)限管理入門(mén)
- Oracle存儲(chǔ)過(guò)程簡(jiǎn)單實(shí)例
本文名稱(chēng):Oracle臨時(shí)表的創(chuàng)建
瀏覽路徑:http://m.5511xx.com/article/dhihpeg.html


咨詢(xún)
建站咨詢(xún)
