<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      雖然目前pl/sql developer等數據庫客戶端軟件都支持將表數據以excel格式導出,但是如果數據量大,需要等客戶端加載表數據等待很久。而且,可能會遇到定時以excel格式導出數據的要求。因此我自己寫了一個使用存儲過程將表數據以excel格式導出的存儲過程。

      1. 服務端新建目錄
        create directory DIR_EXCEL as 'D:\DIR_EXCEL';
      2. 新建存儲過程
      create or replace procedure pr_export_to_excel(p_table_name      varchar2,
                                                     p_where_predicate varchar2 default null) is
        /*
        propose:根據表名和where條件生成excel
        p_where_predicate:where條件語句
        */
        out_file          utl_file.file_type; --定義一個文件類型變量
        str1              varchar2(20000); --定義一個字符串變量,用于存儲表1的字段名
        str1_chr          varchar2(30000);
        l_sql             varchar2(20000);
        l_where_predicate varchar2(30000) default 'where ' || p_where_predicate;
      
      begin
      
        if p_where_predicate is null then
          l_where_predicate := null;
        end if;
        --查詢表1的字段名,用制表符分隔,并賦值給str1
        select listagg(column_name, chr(9)) within group(order by column_id)
          into str1
          from user_tab_columns
         where table_name = upper(p_table_name);
      
        --查詢表1的字段名,用制表符分隔,并賦值給str1_chr
        select listagg(case
                         when t.DATA_TYPE = 'DATE' OR t.DATA_TYPE LIKE 'TIMESTAMP%' THEN
                          'to_char(f_cur.' || column_name || ',''YYYYMMDD HH24:MI:SS'')'
                         else
                          'f_cur.' || column_name
                       END,
                       '||chr(9)||') within group(order by column_id)
          into str1_chr
          from user_tab_columns t
         where table_name = upper(p_table_name);
      
        l_sql := '
        declare
          out_file utl_file.file_type; --定義一個文件類型變量
        BEGIN
          --打開一個文件,指定目錄對象、文件名和寫入模式
          out_file := utl_file.fopen('' DIR_EXCEL '',
                                     ''' || p_table_name ||
                 '.xls '',
                                     '' W '',
                                     32767);
          utl_file.put_line(out_file,
                            ''' || str1 ||
                 '''); --寫入字段名,換行
          for f_cur in (select *
                          from ' || p_table_name || ' t ' ||
                 l_where_predicate || ') loop
            utl_file.put_line(out_file, ' || str1_chr || ');
          end loop;
          utl_file.fclose(out_file);
        exception
          when others then
            utl_file.fclose(out_file); --關閉文件,防止異常關閉
            dbms_output.put_line(SQLERRM);
            dbms_output.put_line(dbms_utility.format_error_backtrace);
            raise; --拋出異常信息
        end;
        ';
        dbms_output.put_line(l_sql);
        --dbms_output.put_line(l_sql);
        execute immediate l_sql;
      exception
        when others then
          utl_file.fclose(out_file); --關閉文件,防止異常關閉
          dbms_output.put_line(SQLERRM);
          dbms_output.put_line(dbms_utility.format_error_backtrace);
          raise; --拋出異常信息
      end pr_export_to_excel;
      

      3.調用存儲過程
      call pr_export_to_excel('TEST','NAME='''123''');
      4.去目錄'D:\DIR_EXCEL'取出TEST.xls文件

      posted on 2024-07-24 14:51  追求完美9196  閱讀(577)  評論(2)    收藏  舉報
      主站蜘蛛池模板: 米脂县| 亚洲精品一二三区在线看| 国产亚洲精品综合99久久| 成人午夜免费无码视频在线观看| 成在线人永久免费视频播放 | 欧美中文字幕在线看| 国产suv精品一区二区四| 国产午夜亚洲精品福利| 国产综合久久99久久| 亚洲中文字幕在线二页| 狠狠色婷婷久久综合频道日韩 | 色综合视频一区二区三区| 久久99久国产精品66| 疯狂的欧美乱大交| 高清无码爆乳潮喷在线观看| 国产 麻豆 日韩 欧美 久久| 伊人久久精品无码麻豆一区| 国产精品成人一区二区三区| 丝袜美腿亚洲综合在线观看视频| 在线看国产精品自拍内射| 墨竹工卡县| 国产丰满乱子伦无码专区| 久久一日本综合色鬼综合色 | 亚洲精品国产成人| 熟女人妻aⅴ一区二区三区电影| 梁河县| 国产精品大全中文字幕| 亚洲av一本二本三本| 亚洲AV永久纯肉无码精品动漫| 欧美综合区自拍亚洲综合绿色| 国产一区二区三四区| 午夜福利电影| 最新亚洲av日韩av二区| 久热伊人精品国产中文| 国内精品久久人妻无码妲| 亚洲中文字幕无码久久精品1| 国产成人高清亚洲综合| 无码人妻精品丰满熟妇区 | 亚洲精品二区在线播放| 2021亚洲国产精品无码| 亚洲欧洲精品一区二区|