2013-08-20 35 views
2

我目前通过这个sqlplus的脚本在后台将管道文件管道列标题:阀芯与分隔的sqlplus

set feedback off 
    set echo off 
    set verify off 
    set pagesize 0 
    set heading off 
    set termout off 
    set trim on 
    set wrap on 
    set trimspool on 
    set linesize 9000 
    spool c:\exp3.txt 
    select 
    to_char(D_DTM, 'mm-dd-yyyy hh24.mi.ss')||'|'|| 
    DAYOFWEEK||'|'||"24HOUR"||'|'||TECHNOLOGY||'|'||VOICEDATA||'|'||MRKT_NM||'|'||REGION_NM||'|'||CLUSTER_NM||'|'|| 
    CLUSTER2_NM||'|'||BSC_NM||'|'||BTS_ID||'|'||BSC_BTS||'|'||CSCD_ID||'|'||CSCD_NM||'|'||SECT_SEQ_ID||'|'||BND_ID||'|'|| 
    FA_ID||'|'||ATT_CNT||'|'||AXS_F_CNT||'|'||CE_BLK_CNT||'|'||CUST_BLK_CNT||'|'||DRP_CALL_CNT||'|'||HHI_ATT_CNT||'|'|| 
    HHI_BAFRM_CNT||'|'||HHI_CALL_SETUP_SXS_CNT||'|'||MBL_ORG_CNT||'|'||MBL_TER_CNT||'|'||NON_BTS_EQ_BLK_CNT||'|'|| 
    PRIM_CALL_ERL||'|'||PWR_BLK_CNT||'|'||SFUL_CALL_CNT||'|'||SILENT_RETRY_CNT||'|'||T1_BHL_BLK_CNT||'|'||WCD_BLK_CNT||'|'|| 
    SMS_ATT_CNT||'|'||SMS_SXS_CNT||'|'||CTRL_CH_USG_CNT||'|'||CTRL_SL_USG_CNT||'|'||DO_SECT_PHL_FWD_PS_TMS||'|'|| 
    DO_SECT_PHL_REV_PS_TMS||'|'||EUSR_CONN_SETUP_ATT_CNT||'|'||EUSR_CONN_SETUP_F_CNT||'|'||FWD_D_TRANSD_QTY||'|'|| 
    MAC_ID_BLK_CNT||'|'||MAC_ID_UTIL_RT||'|'||MS_RQST_CNT||'|'||MS_RQST_D_QTY||'|'||NORM_CONN_CLS_CNT||'|'|| 
    NORM_SESS_RLS_CNT||'|'||RAB_SET_CNT||'|'||RCVD_RAB_CNT||'|'||REV_AIR_PER_BAD_FRM_CNT||'|'||REV_AIR_PER_TRSF_D_QTY||'|'|| 
    REV_D_TRANSD_QTY||'|'||RNC_BLK_CNT||'|'||SESS_ATT_CNT||'|'||SESS_CONF_SXS_CNT||'|'||SL_USG_CNT||'|'||MAX_USER_CNT||'|'|| 
    AVG_USER_CNT||'|'||MOU_TMS||'|' 
    from ds3r_fh_all_fa_lvl_kpi 
    where D_DTM = to_date('8/19/2013', 'mm/dd/yyyy'); 

,但我无法弄清楚如何将列名作为文件作为头好。我怎么做?

回答

2

您应该设置pagesize到非零数字,这样你的头会被显示。您设置的数量可能取决于您拥有的行数。如果设置100

set pagesize 50000

然后100行会的标题下打印,然后列标题将被重复下一个100行。如在50000中提到的最大同时设定heading到作为

set heading on

否则它不会显示标题,尽管页大小是非零的。另外请记住,当您以这种方式选择列时,它们不会被填充,因此标题可能显得不合适。

0

将pagesize设置为0会关闭sql * plus中的列标题。

尝试将其设置到50000

set pagesize 50000 

我认为这是最大(我可能是错上!)

0

以下设置在.sql文件的顶部。

集合页大小50000
集上

+0

这只是重复一个较早接受的答案。 –

3
set heading on 
set pagesize 0 embedded on 
  • 标题包括报头
  • 无限页大小
0

组嵌入

页大小0添加上述钓线卷线轴

0

我会建议你一个更智能的解决方案,因为我一直在努力。而不是显示头对我来说不是一个很好的解决方案,你可以从你自己的文本创建它。 简单地增加一个SELECT和UNION将做到这一点很好:

SELECT 'CHANNEL_CODE ; ISDN ; ACTIVATION_DATE ; TOTAL_MONEY ' from dual 
union all 
SELECT * ... (your query here) 

希望这会有所帮助。