国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

Oracle中的臨時表用法匯總

瀏覽:3日期:2023-11-14 17:28:31
說明:下文中的一些說明和示例代碼摘自CSDN,恕不一一指明出處,在此一并對相關作者表示感謝! 假如作者有異議,請來信說明1 語法;在Oracle中,可以創建以下兩種臨時表: 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將截斷表。2 動態創建;create or replace procedure pro_temp(v_col1 varchar2,v_col2 varchar2) asv_num number;beginselect count(*) into v_num from user_tables where table_name='T_TEMP';--create temporary tableif v_num<1 thenexecute immediate 'CREATE GLOBAL TEMPORARY TABLE T_TEMP (COL1 VARCHAR2(10),COL2 VARCHAR2(10)) ON COMMIT delete ROWS';end if;--insert dataexecute immediate 'insert into t_temp values('''v_col1''','''v_col2''')';execute immediate 'select col1 from t_temp' into v_num;dbms_output.put_line(v_num);execute immediate 'delete from t_temp';commit;execute immediate 'drop table t_temp';end pro_temp;測試:15:23:54 SQL> set serveroutput on15:24:01 SQL> exec pro_temp('11','22');11PL/SQL 過程已成功完成。已用時間: 00: 00: 00.7915:24:08 SQL> desc t_temp;ERROR:ORA-04043: 對象 t_temp 不存在3 特性和性能(與普通表和視圖的比較);臨時表只在當前連接內有效臨時表不建立索引,所以假如數據量比較大或進行多次查詢時,不推薦使用數據處理比較復雜的時候時表快,反之視圖快點在僅僅查詢數據的時候建議用游標: open cursor for 'sql clause';歡迎補充!
標簽: Oracle 數據庫
主站蜘蛛池模板: 象州县| 大港区| 宁夏| 南昌市| 汤阴县| 大安市| 中江县| 大竹县| 台南市| 定远县| 黄冈市| 大理市| 苍溪县| 永春县| 额尔古纳市| 丹寨县| 武平县| 白朗县| 建瓯市| 周至县| 河曲县| 金阳县| 肇东市| 阳山县| 福海县| 汝阳县| 循化| 图木舒克市| 韶关市| 旺苍县| 富宁县| 筠连县| 石河子市| 景东| 洛浦县| 章丘市| 黄龙县| 连云港市| 喀什市| 佛教| 南乐县|