我现在想要调试这个程序,所以写了一个test script调用它,如下:
declare
pn_Return NUMBER;
TYPE RefCursor IS REF CURSOR;
argOutintSqlErr NUMBER;
recTmp RefCursor;
intRet NUMBER;
begin
pn_Return := PKG#LST_FBA1301.FN#FBA1301
(
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
argOutintSqlErr,
recTmp
) ;DBMS_OUTPUT.PUT_LINE('argOutintSqlErr=' || CHR(200) ||argOutintSqlErr) ;
IF pn_Return = 0 THEN
COMMIT;
DBMS_OUTPUT.PUT_LINE('pn_Return=' || CHR(200) || pn_Return) ;
for recTmp in RefCursor loop
DBMS_OUTPUT.PUT_LINE('argOutintSqlErr=' || CHR(200) ||recTmp.NEN) ;
end loop;
ELSE
ROLLBACK;
DBMS_OUTPUT.PUT_LINE('pn_Return=' || CHR(200) || pn_Return) ;
END IF;
end ;
但是老提示
for recTmp in RefCursor loop
DBMS_OUTPUT.PUT_LINE('argOutintSqlErr=' || CHR(200) ||recTmp.NEN) ;
end loop;
这几行代码错误,问一下,再TEST SCRIPT里如何处理游标的值? 多谢了
declare
pn_Return NUMBER;
TYPE RefCursor IS REF CURSOR;
argOutintSqlErr NUMBER;
recTmp RefCursor;
intRet NUMBER;
begin
pn_Return := PKG#LST_FBA1301.FN#FBA1301
(
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
argOutintSqlErr,
recTmp
) ;DBMS_OUTPUT.PUT_LINE('argOutintSqlErr=' || CHR(200) ||argOutintSqlErr) ;
IF pn_Return = 0 THEN
COMMIT;
DBMS_OUTPUT.PUT_LINE('pn_Return=' || CHR(200) || pn_Return) ;
for recTmp in RefCursor loop
DBMS_OUTPUT.PUT_LINE('argOutintSqlErr=' || CHR(200) ||recTmp.NEN) ;
end loop;
ELSE
ROLLBACK;
DBMS_OUTPUT.PUT_LINE('pn_Return=' || CHR(200) || pn_Return) ;
END IF;
end ;
但是老提示
for recTmp in RefCursor loop
DBMS_OUTPUT.PUT_LINE('argOutintSqlErr=' || CHR(200) ||recTmp.NEN) ;
end loop;
这几行代码错误,问一下,再TEST SCRIPT里如何处理游标的值? 多谢了
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货