mysql和oracle导出csv文件

嗯,这里是简介,主题配置内可以修改,如留空则不显示

mysql和oracle导出csv文件

oracle

 
主要结构如下:
set colsep , 
set feedback off 
set heading off 
set trimout on 
spool e:\leo.csv 
select id,name from leoo;
spool off 
exit

在sql*plus中执行以上代码即可。

sqlplus -s 用户名/密码@数据库名 @spool.sql
 
我在工程中使用的代码是:
define exportPath=&1
define falias=&2
define fileName=&3
/*
exportPath: 导出路径
falias: 风场别名
*/

set colsep ','
set heading off
set pagesize 0
SET TRIMSPOOL ON
SET TRIMOUT ON
set linesize 32767
set feedback off
set termout off
set timing off
set verify off
set echo off
set newpage none
set sqlblanklines off
set trims on
set serveroutput on
set NULL NULL

define exportFile = &exportPath./&fileName..csv

spool &exportFile

BEGIN
    dbms_output.put_line('"alias","id"');
    FOR crs IN (SELECT fac_alias alias, fac_id id FROM fac_info where fac_alias like '&falias%'
                UNION
                SELECT bay_alias, bay_id FROM bay_info WHERE bay_alias LIKE '&falias%'
                UNION
                SELECT other_alias, other_id FROM other_device WHERE other_alias LIKE '&falias%'
                UNION
                SELECT cb_alias, cb_id FROM cb_device WHERE cb_alias LIKE '&falias%'
                UNION
                SELECT bs_alias, bs_id FROM bs_device WHERE bs_alias LIKE '&falias%'
                UNION
                SELECT tr_alias, tr_id FROM tr_device WHERE tr_alias LIKE '&falias%'
                UNION
                SELECT gn_alias, gn_id FROM gn_device WHERE gn_alias LIKE '&falias%'
                UNION
                SELECT ld_alias, ld_id FROM ld_device WHERE ld_alias LIKE '&falias%'
                UNION
                SELECT rc_alias, rc_id FROM rc_device WHERE rc_alias LIKE '&falias%'
                UNION
                SELECT wd_alias, wd_id FROM wd_device WHERE wd_alias LIKE '&falias%'
                UNION
                SELECT other_alias, other_id FROM rly_device WHERE other_alias LIKE '&falias%'
                UNION
                SELECT wtg_alias, wtg_id FROM wtg_device WHERE wtg_alias LIKE '&falias%'
                UNION
                SELECT yx_alias, yx_id FROM yx_define WHERE yx_alias LIKE '&falias%'
                UNION
                SELECT yc_alias, yc_id FROM yc_define WHERE yc_alias LIKE '&falias%'
                UNION
                SELECT kwh_alias, kwh_id FROM dd_define WHERE kwh_alias LIKE '&falias%'
                UNION
                SELECT yk_alias, yk_id FROM yk_yx_rely WHERE yk_alias LIKE '&falias%'
                UNION
                SELECT ied_alias, ied_id FROM ied_info WHERE ied_alias LIKE '&falias%'
                UNION
                SELECT ld_alias, ld_id FROM ld_info WHERE ld_alias LIKE '&falias%') LOOP
        dbms_output.put_line('"'||TRIM(crs.alias) || '","' || crs.id||'"');
    END LOOP;
END;
/

spool off

exit


 mysql

 
基本机构如下:
 
select id,name_chn from node_wf_region into outfile 'e://node_wf_region.csv' fields terminated by ',';


 
我在工程中使用的代码如下:
set @sql_script = concat("select '\"alias\",\"id\"' into outfile '",@exportPath,"/",@fileName,".csv' character set utf8 lines terminated by '\\n'");
prepare stmt from @sql_script;
execute stmt;
deallocate prepare stmt;

set @sql_script = concat("select concat('\"',alias,'\"'),concat('\"',id,'\"')
into outfile'",@exportPath,"/",@fileName,"_content.csv' character set utf8 fields terminated by ',' lines terminated by '\\n'
from( SELECT fac_alias alias, fac_id id FROM fac_info where fac_alias like '",@falias,"%'
      UNION
      SELECT bay_alias, bay_id FROM bay_info WHERE bay_alias LIKE '",@falias,"%'
      UNION
      SELECT other_alias, other_id FROM other_device WHERE other_alias LIKE '",@falias,"%'
      UNION
      SELECT cb_alias, cb_id FROM cb_device WHERE cb_alias LIKE '",@falias,"%'
      UNION
      SELECT bs_alias, bs_id FROM bs_device WHERE bs_alias LIKE '",@falias,"%'
      UNION
      SELECT tr_alias, tr_id FROM tr_device WHERE tr_alias LIKE '",@falias,"%'
      UNION
      SELECT gn_alias, gn_id FROM gn_device WHERE gn_alias LIKE '",@falias,"%'
      UNION
      SELECT ld_alias, ld_id FROM ld_device WHERE ld_alias LIKE '",@falias,"%'
      UNION
      SELECT rc_alias, rc_id FROM rc_device WHERE rc_alias LIKE '",@falias,"%'
      UNION
      SELECT wd_alias, wd_id FROM wd_device WHERE wd_alias LIKE '",@falias,"%'
      UNION
      SELECT other_alias, other_id FROM rly_device WHERE other_alias LIKE '",@falias,"%'
      UNION
      SELECT wtg_alias, wtg_id FROM wtg_device WHERE wtg_alias LIKE '",@falias,"%'
      UNION
      SELECT yx_alias, yx_id FROM yx_define WHERE yx_alias LIKE '",@falias,"%'
      UNION
      SELECT yc_alias, yc_id FROM yc_define WHERE yc_alias LIKE '",@falias,"%'
      UNION
      SELECT kwh_alias, kwh_id FROM dd_define WHERE kwh_alias LIKE '",@falias,"%'
      UNION
      SELECT yk_alias, yk_id FROM yk_yx_rely WHERE yk_alias LIKE '",@falias,"%'
      UNION
      SELECT ied_alias, ied_id FROM ied_info WHERE ied_alias LIKE '",@falias,"%'
      UNION
      SELECT ld_alias, ld_id FROM ld_info WHERE ld_alias LIKE '",@falias,"%')t");
-- select @sql_script;
prepare stmt from @sql_script;
execute stmt;
deallocate prepare stmt;

如有不清除请联系:342834599

 


发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Hello world. 豫ICP备16008819号-1.

Power by Z-BlogPHP  Theme by wzdaxue