spool导出VARCHAR2(4000)的数据就换行了a
spool导出VARCHAR2(4000)的数据就换行了
导出了下面四个字段
CONTENT_BASE64 VARCHAR2(4000) Y
CONTENT_MD5 VARCHAR2(4000) Y
COMMENTS_BASE64 VARCHAR2(4000) Y
AREA_BASE64 VARCHAR2(4000) Y
spool脚本如下:接待方案
SQL code?set term off --set wrap off set heading off set verify off set pagesize 0 --set long 90000 set linesize 32767 set trimspool on set feedback off set echo off col TXT format a20000 --spool /home/witzzy/zzynode/data/cont_data.tmp spool /home/witzzy/zzynode/data/cont_20130509091213_cmcc_shanghai_01.data select seed_id||','|| seed_type||','|| to_char(seed_time,'yyyymmddhh24miss')||','|| ori_id||','|| content_base64||','|| content_md5||','|| cat_id||','|| day_prop||','|| COMMENTS_BASE64 ||','|| to_char(plan_exetime,'yyyymmddhh24miss')||','|| last_userid||','|| to_char( last_modtime,'yyyymmddhh24miss')||','|| status||','|| is_delete||','|| AREA_BASE64||','|| title||','||play_time||','|| contype_id||','|| vendor||','|| cp_id TXT from tmp_v_expseeds a where not exists(select 1 from T_EXP_SEEDS b where a.ori_id=b.ori_id and a.seed_id=b.seed_id and a.seed_time=b.seed_time and b.t_flag=1 and b.flag=0 ); spool off;
表结构如下:
SQL code?SQL> desc tmp_v_expseeds; Name Type Nullable Default Comments --------------- -------------- -------- ------- -------- SEED_ID VARCHAR2(200) Y SEED_TYPE NUMBER Y SEED_TIME DATE Y ORI_ID NUMBER Y CONTENT_SEED VARCHAR2(500) Y CONTENT_BASE64 VARCHAR2(4000) Y CONTENT_MD5 VARCHAR2(4000) Y CAT_ID NUMBER Y DAY_PROP NUMBER Y COMMENTS VARCHAR2(2000) Y COMMENTS_BASE64 VARCHAR2(4000) Y PLAN_EXETIME DATE Y LAST_USERID VARCHAR2(64) Y LAST_MODTIME DATE Y STATUS NUMBER Y IS_DELETE NUMBER Y AREA VARCHAR2(20) Y AREA_BASE64 VARCHAR2(4000) Y TITLE VARCHAR2(100) Y PLAY_TIME NUMBER Y CONTYPE_ID NUMBER Y CON_NAME VARCHAR2(50) Y CAT_NAME VARCHAR2(60) Y USER_NAME VARCHAR2(64) Y VENDOR VARCHAR2(100) Y CP_ID NUMBER Y
这个应该是字段内容里面包含了换行符,SPOOL的时候才会出现这种情况