版本号:7.0.1
业务场景(如下):
为防止sql溢出,代码中使用了批处理形式,如下:
预期效果(如下):
执行正常的Oracle环境,跟踪SQL如下:
DECLARE
CostCenterID VarChar(36);
sqlStr Varchar(2000);
BEGIN
CostCenterID:='c637104a-e292-47b5-8c57-a85b90fc0167';
sqlStr:=' begin
Update GoodsMovementItem set CostCenterID=:CostCenterID where GoodsMovementID||GoodsMovementItemID = ''000000000000000000290001'';
Update GoodsMovementItem set CostCenterID=:CostCenterID where GoodsMovementID||GoodsMovementItemID = ''000000000000000000290002'';
end;';
EXECUTE IMMEDIATE sqlStr using CostCenterID;
END;
实际效果(如下)(包括错误,异常):
执行功能时候报错,好像是参数化没起作用。
跟踪的SQL如下:
begin
Update GoodsMovementItem set CostCenterID=:CostCenterID where GoodsMovementID||GoodsMovementItemID = '100100000000001554410001';
Update GoodsMovementItem set CostCenterID=:CostCenterID where GoodsMovementID||GoodsMovementItemID = '100100000000001554410002';
Update GoodsMovementItem set CostCenterID=:CostCenterID where GoodsMovementID||GoodsMovementItemID = '100100000000001554410003';
end; CostCenterID='213b8bc7-cca3-4764-8c55-b561af0e9ed4'
SELECT SYSTIMESTAMP FROM DUAL
INSERT INTO GSPEXCEPTIONLOG (ID,INSTANCECODE,USERID,USERCODE,ERRORCODE,MODULECODE,HAPPENTIME,CLIENTINFO,SERVERINFO,EXCEPTIONMESSAGE,EXCEPTIONINFO,LICENSEINFO,LASTMODIFYTIME) VALUES(:param0,:param1,:param2,:param3,:param4,:param5,:param6,:param7,:param8,:param9,:param10,:param11,:param12) param0='ae03bb1b-f4aa-4529-a34c-bf57873b10d0', param1='01', param2='6003', param3='6003', param4='', param5='', param6='2017/11/29 17:19:39', param7='chiyan01', param8='
10.24.12.152', param9='', param10='异常:
begin
Update GoodsMovementItem set CostCenterID=:CostCenterID where GoodsMovementID||GoodsMovementItemID = '100100000000001554410001';
Update GoodsMovementItem set CostCenterID=:CostCenterID where GoodsMovementID||GoodsMovementItemID = '100100000000001554410002';
Update GoodsMovementItem set CostCenterID=:CostCenterID where GoodsMovementID||GoodsMovementItemID = '100100000000001554410003';
end;
at
Genersoft.SC.CC.Core.CCMVCenterUpdate.CCMVCenterSet(DataTable dtSelects, String CostCenter)', param11='AAEAAAD/AQAAAAAAAAAGAQAAAAAL', param12='2017/11/29 17:19:39'
操作步骤(如下):