<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Decode360's Blog

    業精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
      302 隨筆 :: 26 文章 :: 82 評論 :: 0 Trackbacks
    Oracle臨時表
    ?
    ??? Oracle臨時表只需要創建一次,其結構總是有效的,每次使用后被清空的只是表里的數據。
    ?
    ??? Oracle的臨時表還保證了 多用戶操作的獨立性:對于使用同一張臨時表的不同用戶,ORACLE都會分配一個獨立的Temp Segment,這樣就避免了多個用戶在對同一張臨時表操作時發生交叉,從而保證了多個用戶操作的并發性和獨立性;
    ??? Oracle臨時表分為兩種,如下:
    ?

    ??? create global temporary table t66 (

    ???? ? ID number ,

    ???? ? NAME varchar2 ( 20 ),

    ????? OP_DATE date )

    ??? on commit delete rows ;--數據提交時清空表

    ?

    ??? create global temporary table t66 (

    ???? ? ID number ,

    ???? ? NAME varchar2 ( 20 ),

    ????? OP_DATE date )

    ??? on commit preserve rows ;--會話結束時清空表

    ?
    ?
    臨時表的存儲空間
    ?

    ??? select owner,table_name,tablespace_name from dba_tables where table_name= 'T66';

    ?
    ??? 由上面的查詢發現,創建的臨時表T66不在默認的表空間中儲存
    ?
    ??? SQL> alter tablespace temp offline;?????
    ?
    ??? 表空間已更改。
    ?
    ??? SQL>?insert?into?t66
    ?????? 2?select *?from t1;
    ?
    ??? insert?into?t66
    ??????????????? *
    ?
    ??? ERROR 位于第 1 行:
    ??? ORA-01542: 表空間'TEMP'脫機,無法在其中分配空間
    ?
    ??? 由上面的操作發現,表T66存儲于TEMP表空間中
    ?
    ?
    臨時表應用舉例
    ?
    ??? 1、臨時表不建立索引,所以如果數據量比較大或進行多次查詢時,不推薦使用
    ?
    ??? 2、數據處理比較復雜的時候使用臨時表快,反之視圖快點
    ?
    ??? 3、在僅僅查詢數據的時候建議用游標
    ?
    ??? 4、在分析數據時,經常用到臨時表來存放中間數據
    ?
    ??? 舉例: 對于一個電子商務類網站,不同消費者在網站上購物,就是一個獨立的SESSION,選購商品放進購物車中,最后將購物車中的商品進行結算。也就是說,必須在整個SESSION期間保存購物車中的信息。同時,還存在有些消費者,往往最終結賬時放棄購買商品。如果,直接將消費者選購信息存放在最終表(PERMANENT)中,必然對最終表造成非常大的壓力。
    ??? 因此,對于這種案例就可以采用創建臨時表 (ON COMMIT PRESERVE ROWS) 的方法來解決。數據只在 SESSION 期間有效,對于結算成功的有效數據,轉移到最終表中后,ORACLE自動TRUNCATE 臨時數據;對于放棄結算的數據,ORACLE 同樣自動進行 TRUNCATE ,而無須編碼控制,并且最終表只處理有效訂單,減輕了頻繁的DML的壓力。
    ?
    臨時表使用索引問題
    ?
    ??? 總體來說,在臨時表上建立索引經常會被忽略不使用,所以盡量還是不要加索引,太大的數據量就不要用臨時表了。
    ?
    ??? 具體的索引使用情況參見文章 http://bbs.bitscn.com/69514
    ?
    ?
    ?
    ?




    -The End-

    posted on 2008-10-15 20:01 decode360-3 閱讀(1249) 評論(0)  編輯  收藏 所屬分類: Oracle
    主站蜘蛛池模板: 日本一区二区在线免费观看 | 无码永久免费AV网站| 国产亚洲无线码一区二区| 国产精品hd免费观看| 亚洲性久久久影院| 一个人免费观看www视频| 亚洲一级特黄大片在线观看| 国产精品黄页免费高清在线观看| 亚洲区日韩区无码区| 大妹子影视剧在线观看全集免费| 国产精品久久久亚洲| 一级毛片在线免费看| 亚洲精品电影在线| 成人免费a级毛片| 国产亚洲精品美女久久久久 | 久久亚洲国产成人影院网站| 99在线视频免费观看| 亚洲AV无码第一区二区三区| 久久国产免费福利永久| 亚洲色偷偷综合亚洲av78| 日本视频免费在线| 插鸡网站在线播放免费观看| 亚洲影院在线观看| 午夜视频免费观看| 人妻免费久久久久久久了| 青青草原精品国产亚洲av| 在线播放高清国语自产拍免费| 香港一级毛片免费看| 亚洲成AV人片在线观看| 在人线av无码免费高潮喷水| 美女被爆羞羞网站在免费观看| 亚洲乱码日产一区三区| 1000部国产成人免费视频| 日韩色视频一区二区三区亚洲| 亚洲精品国产成人片| 黄瓜视频影院在线观看免费| www成人免费观看网站| 亚洲国产精品成人综合久久久| 四虎影在线永久免费四虎地址8848aa| a毛片全部播放免费视频完整18| 亚洲乱码在线观看|