来自 技术 2019-04-17 00:00 的文章

函数FUN_GET_SPOOL_STRING_LHR的内容--spool导出csv文件格

Oracle使用SQL*Plus生成html文件参考:http://blog.itpub.net/26736162/viewspace-2149543/

Oracle如何使用spool导出utf8字符集的文本文件:http://blog.itpub.net/26736162/viewspace-2639287/

导出csv文件格式

保存以下内容为spoolcsv.sql:

setechoonsettrimspoolonsettrimoutonsetlinesize4000setpagesize0setsqlblanklinesonsetfeedbackoffsetserveroutputoffsettermoffsetechooffdefinedata_path=E:\datacolymdnew_valuev_ymdselectto_char(sysdate,'YYYYMMDDHH24MISS')ymdFROMdual;spool&data_path\result_&&v_ymd..csvSELECTsubstr(t.lie,3)FROM(SELECT0||','||'DEPTNO'||','||'DNAME'||','||'LOC'lieFROMdualaUNIONSELECTreplace(replace(1||','||REPLACE(DEPTNO,',','、')||','||REPLACE(DNAME,',','、')||','||REPLACE(LOC,',','、'),chr(10),''),chr(13),'')fromSCOTT.DEPT)t;spooloffexit---命令行--sqlpluslhr/lhr@orcl@f:\sql\spool\spool_csv.sql--SELECTfun_get_spool_string_lhr('SCOTT','EMP')FROMDUAL;

其中函数fun_get_spool_string_lhr如下所示:

CREATEORREPLACEFUNCTIONFUN_GET_SPOOL_STRING_LHR(P_OWNERVARCHAR2,P_TABLEVARCHAR2)RETURNVARCHAR2AS-------------------------------------------------------------------------------------Createdon2012/11/0711:33:07bylhr--Changedon2012/11/0711:33:07bylhr--function:/*droptableXB_COLS_LHR;CreateTableXB_COLS_LHR(idnumber,lievarchar2(4000));*/-----------------------------------------------------------------------------------V_RETURNVARCHAR2(32767);V_RETURN1VARCHAR2(32767);V_RETURN2VARCHAR2(32767);V_MAXVARCHAR2(255);V_TABLEVARCHAR2(255):=UPPER(P_TABLE);PRAGMAAUTONOMOUS_TRANSACTION;BEGINSELECTCOUNT(1)INTOV_MAXFROMDBA_TAB_COLSCWHEREC.TABLE_NAME=V_TABLEANDC.OWNER=P_OWNER;---列SELECT'SELECT'||0||'||'','||TO_CHAR(WMSYS.WM_CONCAT(DECODE(T.COLUMN_ID,V_MAX,'''||'''||T.COLUMN_NAME||'''','''||'''||T.COLUMN_NAME||'''||''')))||'lieFROMduala'INTOV_RETURN1FROM(SELECTC.COLUMN_NAME,C.COLUMN_IDFROMDBA_TAB_COLSCWHEREC.TABLE_NAME=V_TABLEANDC.OWNER=P_OWNERORDERBYC.COLUMN_ID)T;--表SELECT'UNIONSELECTreplace(replace('||1||'||'','||TO_CHAR(WMSYS.WM_CONCAT(DECODE(T.COLUMN_ID,V_MAX,'''||REPLACE('||T.COLUMN_NAME||','','',''、'')','''||REPLACE('||T.COLUMN_NAME||','','',''、'')||''')))||',chr(10),''''),chr(13),'''')from'||P_OWNER||'.'||V_TABLEINTOV_RETURN2FROM(SELECTC.COLUMN_NAME,C.COLUMN_IDFROMDBA_TAB_COLSCWHEREC.TABLE_NAME=V_TABLEANDC.OWNER=P_OWNERORDERBYC.COLUMN_ID)T;IFLENGTH(V_RETURN2)>2000THENEXECUTEIMMEDIATE'truncatetableXB_COLS_LHR';INSERTINTOXB_COLS_LHRVALUES(1,'SELECTsubstr(t.lie,3)FROM('||V_RETURN1);INSERTINTOXB_COLS_LHRVALUES(2,V_RETURN2||')t;');COMMIT;V_RETURN:='见表select*fromXB_COLS_LHR;';ELSEV_RETURN:='SELECTsubstr(t.lie,3)FROM('||V_RETURN1||V_RETURN2||')t;';ENDIF;RETURNV_RETURN;ENDFUN_GET_SPOOL_STRING_LHR;/



About Me

........................................................................................................................

● 本文作者:小麦苗,部分内容整理自网络,若有侵权请联系小麦苗删除

● 本文在itpub(http://blog.itpub.net/26736162)、博客园(http://www.cnblogs.com/lhrbest)和个人weixin公众号(xiaomaimiaolhr)上有同步更新

● 本文itpub地址:http://blog.itpub.net/26736162

● 本文博客园地址:http://www.cnblogs.com/lhrbest

● 本文pdf版、个人简介及小麦苗云盘地址:http://blog.itpub.net/26736162/viewspace-1624453/

● 数据库笔试面试题库及解答:http://blog.itpub.net/26736162/viewspace-2134706/

● DBA宝典今日头条号地址:http://www.toutiao.com/c/user/6401772890/#mid=1564638659405826

........................................................................................................................

● QQ群号:230161599(满)、618766405

● weixin群:可加我weixin,我拉大家进群,非诚勿扰

● 联系我请加QQ好友(646634621),注明添加缘由

● 于 2019-04-01 06:00 ~ 2019-04-30 24:00 在魔都完成

● 最新修改时间:2019-04-01 06:00 ~ 2019-04-30 24:00

● 文章内容来源于小麦苗的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解

● 版权所有,欢迎分享本文,转载请保留出处

........................................................................................................................

● 小麦苗的微店:https://weidian.com/s/793741433?wfr=c&ifr=shopdetail

● 小麦苗出版的数据库类丛书:http://blog.itpub.net/26736162/viewspace-2142121/

● 小麦苗OCP、OCM、高可用网络班:http://blog.itpub.net/26736162/viewspace-2148098/

● 小麦苗腾讯课堂主页:https://lhr.ke.qq.com/

........................................................................................................................

使用weixin客户端扫描下面的二维码来关注小麦苗的weixin公众号(xiaomaimiaolhr)及QQ群(DBA宝典)、添加小麦苗weixin,学习最实用的数据库技术。

........................................................................................................................