Oracle - 临时表(GLOBAL TEMPORARY TABLE)
生活随笔
收集整理的這篇文章主要介紹了
Oracle - 临时表(GLOBAL TEMPORARY TABLE)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
http://aofengblog.blog.163.com/blog/static/6317021200951664351836/
Oracle - 臨時表(GLOBAL TEMPORARY TABLE)??
2009-06-16 18:43:51|??分類: 數據庫 |??標簽: |字號大中小?訂閱
文章聲明作者:傲風(aofengblog@163.com) ????? 編寫時間:2009年06月16日
網址:http://aofengblog.blog.163.com
作者保留所有權利,轉載請保留文章全部內容!
環境
Oracle 9i,Oracle 10G?
描述
??? ORACLE數據庫除了可以保存永久表外,還可以建立臨時表temporary tables。這些臨時表用來保存一個會話SESSION的數據,或者保存在一個事務中需要的數據。當會話退出或者用戶提交commit和回滾rollback事務的時候,臨時表的數據自動清空,但是臨時表的結構以及元數據還存儲在用戶的數據字典中。??? 可以對臨時表創建索引,視圖,出發器,可以用export和import工具導入導出表的定義,但是不能導出數據。表的定義對所有的會話可見。
??? 臨時表只在oracle8i以及以上產品中支持。
1、兩種臨時表:
| ?會話臨時表 | ?保存當前會話(session)用到的數據,數據會話期間存在,每次提交后ORACLE將截斷表(刪除全部行)。 |
| ?事務臨時表 | ?保存當前事務用到的數據,數據只在事務期間存在,當中斷會話時ORACLE將截斷表。 會話的數據對于當前會話私有,每個會話只能看到并修改自己的數據,DML鎖不會加到 臨時表的數據上。 |
2、如何建立臨時表。
- 新建會話臨時表語法
??? <column specification>
) ON COMMIT PRESERVE ROWS;
- 新建事務臨時表語法
??? <column specification>
) ON COMMIT DELETE ROWS;
3、示例。
- 新建會話臨時表
??? user_name varchar2(30) not null,
??? birthday????? date
) ON COMMIT PRESERVE ROWS;
- 新建事務臨時表
??? user_name varchar2(30) not null,
??? birthday????? date
) ON COMMIT DELETE ROWS;
<正文結束>
?
總結
以上是生活随笔為你收集整理的Oracle - 临时表(GLOBAL TEMPORARY TABLE)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 风寒感冒和 风热感冒
- 下一篇: Java编程之URI