1. 程式人生 > >oracle臨時表的使用(未完)

oracle臨時表的使用(未完)

臨時表

臨時表就是用來暫時儲存臨時資料(亦或叫中間資料)的一個數據庫物件,它和普通表有些類似,然而又有很大區別。它只能儲存在臨時表空間,而非使用者的表空間。ORACLE臨時表是會話或事務級別的,只對當前會話或事務可見。每個會話只能檢視和修改自己的資料

  • 建立臨時表

    1. ON COMMIT PRESERVE ROWS
      事務級的臨時表(預設),這種型別的臨時表與事務有關,當進行事務提交或者事務回滾的時候,臨時表的資料將自行截斷,即當COMMIT或ROLLBACK時,資料就會被TRUNCATE掉,其它的特性和會話級的臨時表一致。
CREATE GLOBAL TEMPORARY TABLE
TMP_TEST (     ID NUMBER ,     NAME VARCHAR2(32) ) ON COMMIT DELETE ROWS;
CREATE GLOBAL TEMPORARY TABLE TMP_TEST ON COMMIT DELETE AS SELECT * FROM TEST;
  1. ON COMMIT DELETE ROWS
    會話級的臨時表,表的資料和你當前會話有關係,當前SESSION不退出的情況下,臨時表中的資料就還存在,臨時表的資料只有當你退出當前SESSION的時候才被截斷(TRUNCATE TABLE)
CREATE GLOBAL TEMPORARY
TABLE TMP_TEST (     ID NUMBER ,     NAME VARCHAR2(32) ) ON COMMIT PRESERVE ROWS;
CREATE GLOBAL TEMPORARY TABLE TMP_TEST ON COMMIT PRESERVE ROWS AS SELECT * FROM TEST;

java操作臨時表

jdbc向臨時表中插入資料一般過程是先