我的SPOOL命令行是:
spool d:\&1..txt 
 select '!data' from dual;
select ID||';'||NYEAR||';'||NPERIOD||';'|| CSCENARIO||';'||CPOV ||';'||CENTITYCODE ||';'||CACCOUNTCODE||';'||CVALUE from TBL_TRANS_INTER_DATA_HFM where centitycode=&1;但是执行结果:
!data
原值    1: select ID||';'||NYEAR||';'||NPERIOD||';'|| CSCENARIO||';'||CPOV ||';'||CENTITYCODE ||';'||CACCOUNTCODE||';'||CVALUE from TBL_TRANS_INTER_DATA_HFM where centitycode=&1
新值    1: select ID||';'||NYEAR||';'||NPERIOD||';'|| CSCENARIO||';'||CPOV ||';'||CENTITYCODE ||';'||CACCOUNTCODE||';'||CVALUE from TBL_TRANS_INTER_DATA_HFM where centitycode=123302
;2006;3;Actual;YTD;123302;20902;<Entity Currency>
;2006;3;Actual;YTD;123302;S108;<Entity Currency>
;2006;3;Actual;YTD;123302;S116;<Entity Currency>
;2006;3;Actual;YTD;123302;S119;<Entity Currency>
;2006;3;Actual;YTD;123302;S123;<Entity Currency>
;2006;3;Actual;YTD;123302;S203;<Entity Currency>总是出现原值和新值两行SQL语句.
但是,如果把WHERE 条件不用(&1).直接写条件的时候就没有原值与新值两行SQL语句.不知道为什么?