亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > Oracle > 正文

oracle 臨時表詳解及實例

2024-08-29 13:59:19
字體:
來源:轉載
供稿:網友

在Oracle8i或以上版本中,可以創建以下兩種臨時表:

1。會話特有的臨時表

CREATE GLOBAL TEMPORARY <TABLE_NAME> ( <column specification> )
ON COMMIT PRESERVE ROWS; 

2。事務特有的臨時表

CREATE GLOBAL TEMPORARY <TABLE_NAME> ( <column specification> )
ON COMMIT DELETE ROWS;
CREATE GLOBAL TEMPORARY TABLE MyTempTable  

所建的臨時表雖然是存在的,但是你試一下insert 一條記錄然后用別的連接登上去select,記錄是空的,明白了吧,我把下面兩句話再貼一下:

--ON COMMIT DELETE ROWS 說明臨時表是事務指定,每次提交后ORACLE將截斷表(刪除全部行)
--ON COMMIT PRESERVE ROWS 說明臨時表是會話指定,當中斷會話時ORACLE將截斷表。

沖突的問題更本不用考慮.

臨時表只是保存當前會話(session)用到的數據,數據只在事務或會話期間存在。

通過CREATE GLOBAL TEMPORARY TABLE命令創建一個臨時表,對于事務類型的臨時表, 數據只是在事務期間存在,對于會話類型的臨時表,數據在會話期間存在。

會話的數據對于當前會話私有。每個會話只能看到并修改自己的數據。DML鎖不會加到 臨時表的數據上。下面的語句控制行的存在性。

● ON COMMIT DELETE ROWS 表名行只是在事務期間可見
● ON COMMIT PRESERVE ROWS 表名行在整個會話期間可見

可以對臨時表創建索引,視圖,出發器,可以用export和import工具導入導出表的 定義,但是不能導出數據。表的定義對所有的會話可見。

Temporary Tables臨時表

1簡介

ORACLE數據庫除了可以保存永久表外,還可以建立臨時表temporary tables。這些臨時表用來保存一個會話SESSION的數據,

或者保存在一個事務中需要的數據。當會話退出或者用戶提交commit和回滾rollback事務的時候,臨時表的數據自動清空,
但是臨時表的結構以及元數據還存儲在用戶的數據字典中。

臨時表只在oracle8i以及以上產品中支持。

2詳細介紹

Oracle臨時表分為 會話級臨時表 和 事務級臨時表。

會話級臨時表是指臨時表中的數據只在會話生命周期之中存在,當用戶退出會話結束的時候,Oracle自動清除臨時表中數據。
事務級臨時表是指臨時表中的數據只在事務生命周期中存在。當一個事務結束(commit or rollback),Oracle自動清除臨時表中數據。

臨時表中的數據只對當前Session有效,每個Session都有自己的臨時數據,并且不能訪問其它Session的臨時表中的數據。因此,

臨時表不需要DML鎖.當一個會話結束(用戶正常退出 用戶不正常退出 ORACLE實例崩潰)或者一個事務結束的時候,Oracle對這個會話的

表執行 TRUNCATE 語句清空臨時表數據.但不會清空其它會話臨時表中的數據.

你可以索引臨時表和在臨時表基礎上建立視圖.同樣,建立在臨時表上的索引也是臨時的,也是只對當前會話或者事務有效.

臨時表可以擁有觸發器.

3建立臨時表

臨時表的定義對所有會話SESSION都是可見的,但是表中的數據只對當前的會話或者事務有效.

建立方法:

1) ON COMMIT DELETE ROWS 定義了建立事務級臨時表的方法.

CREATE GLOBAL TEMPORARY TABLE admin_work_area (startdate DATE, enddate DATE, class CHAR(20)) ON COMMIT DELETE ROWS; 

EXAMPLE:

SQL> CREATE GLOBAL TEMPORARY TABLE admin_work_area  (startdate DATE, enddate DATE, class CHAR(20)) ON COMMIT DELETE ROWS; SQL> create table permernate( a number); SQL> insert into admin_work_area values(sysdate,sysdate, ‘temperary table ‘); SQL> insert into permernate values(1); SQL> commit; SQL> select * from admin_work_area; SQL> select * from permernate; A 1  

2)ON COMMIT PRESERVE ROWS 定義了創建會話級臨時表的方法.

CREATE GLOBAL TEMPORARY TABLE admin_work_area (startdate DATE, enddate DATE, class CHAR(20)) ON COMMIT PRESERVE ROWS; EXAMPLE:

會話1:

SQL> drop table admin_work_area; SQL> CREATE GLOBAL TEMPORARY TABLE admin_work_area 2 (startdate DATE, 3 enddate DATE, 4 class CHAR(20)) 5 ON COMMIT PRESERVE ROWS; SQL> insert into permernate values(2); SQL> insert into admin_work_area values(sysdate,sysdate, ‘session temperary ‘); SQL> commit; SQL> select * from permernate;A ---------- 1 2SQL> select * from admin_work_area;STARTDATE ENDDATE CLASS ---------- ---------- -------------------- 17-1?? -03 17-1?? -03 session temperary

會話2:

SQL> select * from permernate;A ---------- 1 2SQL> select * from admin_work_area;

未選擇行.

會話2看不見會話1中臨時表的數據.

4 ORACLE臨時表和SQLSERVER臨時表異同

SQL SERVER臨時表

也可以創建臨時表。臨時表與永久表相似,但臨時表存儲在 tempdb 中,當不再使用時會自動刪除。
有本地和全局兩種類型的臨時表,二者在名稱、可見性和可用性上均不相同。本地臨時表的名稱以單個數字符號 (#) 打頭;
它們僅對當前的用戶連接是可見的;當用戶從 Microsoft? SQL Server? 2000 實例斷開連接時被刪除。全局臨時表的名稱以數學符號

(##) 打頭,創建后對任何用戶都是可見的,當所有引用該表的用戶從 SQL Server 斷開連接時被刪除。
例如,如果創建名為 employees 的表,則任何人只要在數據庫中有使用該表的安全權限就可以使用該表,除非它已刪除。
如果創建名為 #employees 的本地臨時表,只有您能對該表執行操作且在斷開連接時該表刪除。如果創建名為 ##employees 的全局臨時表

數據表中的任何用戶均可對該表執行操作。如果該表在您創建后沒有其他用戶使用,則當您斷開連接時該表刪除。如果該表在您創建

后有其他用戶使用,則 SQL Server在所有用戶斷開連接后刪除該表

不同:

1. SQL SERVER臨時表是一種”內存表”,表是存儲在內存中的.ORACLE臨時表除非執行DROP TABLE,否則表定義會保留在數據字典中.

2. SQL SERVER臨時表不存在類似ORACLE臨時表 事務級別 上的功能.

3 SQL SERVER本地臨時表(#) 與 ORACLE的會話級別臨時表類似,但是在會話退出的時候,ORACLE不會刪除表.

4 SQL SERVER的全局臨時表(##) 是指多個連接共享同一片內存.當沒有指針引用該內存區域時,SQL SERVER自動釋放全局臨時表.

5 由于ORACLE不是一種 內存中的數據庫. 所以如果ORACLE類似SQL SERVER 頻繁的對臨時表進行建立和刪除,必定會影響性能.
所以ORACLE會保留臨時表的定義直到用戶DROP TABLE.

6 在ORACLE中,如果需要多個用戶共享一個表(類似SQL SERVER的全局臨時表##).則可以利用永久表,

并且在表中添加一些可以唯一標識用戶的列.利用觸發器和視圖.當用戶退出的時候,根據該登陸用戶的唯一信息刪除相應的表中的數據.

這種方法給ORACLE帶來了一定量的負載.

以上就是對oracle 臨時表 的資料整理,后續繼續補充相關資料,謝謝大家對本站的支持!


注:相關教程知識閱讀請移步到oracle教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
成人黄色片在线| 国产精品中文字幕在线观看| 在线日韩欧美视频| 亚洲小视频在线| 国产亚洲精品成人av久久ww| 成人亚洲欧美一区二区三区| 国产99久久精品一区二区| 久久成人免费视频| 欧美成人午夜激情在线| 97人人爽人人喊人人模波多| 日韩在线视频免费观看高清中文| 日韩成人在线网站| 成人国产在线激情| 久久久精品视频成人| 成人福利视频在线观看| 日韩中文字幕在线| 国产精品麻豆va在线播放| 国产美女精品视频| 91香蕉国产在线观看| 久久九九热免费视频| 亚洲一区国产精品| 亚洲精品美女免费| 8090成年在线看片午夜| 菠萝蜜影院一区二区免费| 最近2019免费中文字幕视频三| 91理论片午午论夜理片久久| 亚洲欧美日韩直播| 欧美一级淫片丝袜脚交| 91精品国产综合久久香蕉的用户体验| 日韩精品免费电影| 2019国产精品自在线拍国产不卡| 91免费综合在线| 美女扒开尿口让男人操亚洲视频网站| 岛国av一区二区| 黑人巨大精品欧美一区二区一视频| 国产精品久久91| 国产日韩欧美成人| 欧美成人在线网站| 国产中文字幕日韩| 日韩av在线导航| 欧美一区在线直播| 日韩一区二区三区国产| 视频一区视频二区国产精品| 国产精品免费视频久久久| 欧美色欧美亚洲高清在线视频| 原创国产精品91| 精品偷拍一区二区三区在线看| 久久久999精品免费| 成人激情电影一区二区| 欧美性猛交xxxx免费看久久久| 日韩精品在线观看视频| 国产精品久久av| 自拍偷拍亚洲精品| 亚洲第一网站男人都懂| 久久频这里精品99香蕉| 亚洲美女又黄又爽在线观看| 欧美日本在线视频中文字字幕| 91麻豆国产语对白在线观看| 久久人人爽人人爽爽久久| 日韩美女在线看| 在线观看视频亚洲| 成人黄色av网| 亚洲精品91美女久久久久久久| 91麻豆桃色免费看| 亚洲一区二区少妇| 国产精品h片在线播放| 成人h视频在线观看播放| 2025国产精品视频| 日韩在线国产精品| 日韩av中文字幕在线播放| 91久久精品美女高潮| 亚洲最大福利视频网站| 在线免费观看羞羞视频一区二区| 中日韩午夜理伦电影免费| 精品日韩中文字幕| 成人精品福利视频| 91成人在线观看国产| 亚洲国产精品电影在线观看| 欧美国产在线电影| 亚洲精品久久久久国产| 91九色单男在线观看| 懂色av一区二区三区| 欧美激情精品在线| 中文字幕日韩精品有码视频| 色综合天天综合网国产成人网| 国产精品综合网站| 久久免费视频在线| 欧美xxxx14xxxxx性爽| 欧美激情奇米色| 97超级碰在线看视频免费在线看| 欧美性xxxxx极品娇小| 2021国产精品视频| 欧美猛交ⅹxxx乱大交视频| 日本久久久久久久久久久| 国产成人精品av在线| 亚洲成人久久久| 九九热99久久久国产盗摄| 亚洲视频在线看| 久久久久日韩精品久久久男男| 国产精品久久77777| 午夜精品99久久免费| 日韩欧美在线播放| 高清欧美电影在线| 不卡av电影在线观看| 亚洲大胆人体视频| 日本sm极度另类视频| 亚洲精品999| 欧美视频专区一二在线观看| 亚洲香蕉av在线一区二区三区| 久久久久免费精品国产| 国产97在线亚洲| 日本中文字幕成人| 欧美国产精品va在线观看| 一区二区欧美激情| 国产亚洲精品美女久久久| 性色av香蕉一区二区| 日韩视频―中文字幕| 欧美午夜电影在线| 日韩av一区二区在线观看| 午夜免费久久久久| 黄色成人av网| 国产精品精品一区二区三区午夜版| 亚洲国产成人av在线| 久久精品99国产精品酒店日本| 日韩视频在线免费观看| 一区二区三区美女xx视频| 欧美午夜精品伦理| 久久亚洲综合国产精品99麻豆精品福利| 国产免费亚洲高清| 欧美性做爰毛片| 综合国产在线视频| 美日韩精品视频免费看| 色婷婷亚洲mv天堂mv在影片| 一本一本久久a久久精品牛牛影视| 亚洲欧美日韩精品久久亚洲区| 亚洲国产欧美日韩精品| 欧美日韩成人在线播放| 尤物九九久久国产精品的特点| 成人精品一区二区三区电影免费| 欧美乱大交xxxxx| 亚洲自拍偷拍区| 日韩中文字幕在线免费观看| 日韩中文在线中文网三级| 亚洲奶大毛多的老太婆| 91老司机在线| 日韩美女福利视频| 国产精品电影久久久久电影网| 美乳少妇欧美精品| 久久久999精品视频| 国产日韩在线精品av| 国产欧美va欧美va香蕉在线| 国产精品国产三级国产专播精品人| 亚洲乱亚洲乱妇无码| 欧美电影在线观看高清| 国产精品99久久99久久久二8| 国产精品丝袜一区二区三区| 欧美激情亚洲综合一区| 午夜精品一区二区三区视频免费看| 亚洲图片欧洲图片av| 久久视频在线观看免费| 久久乐国产精品| 久久中文精品视频| 色哟哟亚洲精品一区二区| 欧美一性一乱一交一视频|