ORA-00932: 數據類型不一致: 應為 -, 但卻獲得 –


 

在存儲過程調用中出現莫名奇妙的錯誤:

ORA-00932: 數據類型不一致: 應為 -, 但卻獲得 –

 

參照網上分析,原因如下,是用  for ....loop  的方式,使用游標,之前由於要使用的的字段名字是一樣的,所以都使用 c_row也一直沒有報錯,但是后面那個 c_row.prod_code 改為 c_row.fund_code 的時候,就報了這個錯,分析原因是由於 c_row 在第一次用的時候就已經將字段給規定好了,只有相同的字段才會獲取進去。

 

--檢查 多添利產品 的是否未加入考核產品表,沒有就添加進去
v_ExecTime:=sysdate;
for c_row in (
select a.prod_code||'-'||a.prodalias_name||'-自動加入考核產品表' as msg,a.*
from hs_prod.prodcode@otc a
where a.prod_name like '%添利%' and a.prod_code not in(select cpbh from t_Jxkh_Khcp)
)
loop
insert into t_jxkh_khcp (CPBH, SSGS, CPMC, CPLB, CPZT, ZCZSBL, SFJSKHJ, TCBLFS, TCBL, IS_JS_SG, XFRQ, HDQSRQ, HDJZRQ, KZBS, BZ, LRYGBH, LRRQ, ZHXGYGBH, ZHXGSJ, IS_KFJJ, IS_K2, SRLX)
values (c_row.prod_code, null,c_row.prodalias_name, '2', '1', 0.60000, '0', null, null, 0, null, null, null, null, null, 1, to_char(sysdate,'yyyymmdd'), 1,sysdate, 0, 0, 0);

insert into t_gfcp (STOCKCODE, STOCKNAME, INVALID, PERCENT, IS_JS_SG, PERCENT_BANK, IS_KHJL)
values (c_row.prod_code,c_row.prodalias_name, 1, 0.6, 0, 0.6, 0);


end loop;

 

--檢查 多添富產品 的是否未加入考核產品表,沒有就添加進去
v_ExecTime:=sysdate;
for c_row2 in (
select a.fund_code||'-'||a.fund_name||'-未加入考核產品表'as msg,a.* from hs_user.ofstkcode@OTC a
where a.fund_name like '%添富%' and a.fund_code not in(select cpbh from t_Jxkh_Khcp)
)
loop

insert into t_jxkh_khcp (CPBH, SSGS, CPMC, CPLB, CPZT, ZCZSBL, SFJSKHJ, TCBLFS, TCBL, IS_JS_SG, XFRQ, HDQSRQ, HDJZRQ, KZBS, BZ, LRYGBH, LRRQ, ZHXGYGBH, ZHXGSJ, IS_KFJJ, IS_K2, SRLX)
values (c_row2.fund_code, null,c_row2.fund_name, '2', '1', 0.60000, '0', null, null, 0, null, null, null, null, null, 1, to_char(sysdate,'yyyymmdd'), 1,sysdate, 0, 0, 0);

insert into t_gfcp (STOCKCODE, STOCKNAME, INVALID, PERCENT, IS_JS_SG, PERCENT_BANK, IS_KHJL)
values (c_row2.fund_code,c_row2.fund_name, 1, 0.6, 0, 0.6, 0);

--經常短信通知太麻煩
--agfhd_p_sendsms('13922181973,18613036646',c_row.msg);
end loop;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM