带默认参数的存储过程调用
写了个测试的存储过程,
CREATE OR REPLACE PROCEDURE Cal (
p_receiptNO in varchar2 default '''', --账单编号
p_cur OUT sys_refcursor
)IS
ssql varchar2(500);
begin
ssql :='insert into tem_Rep_Cms_auditinfo(Receipt_ID) '||
' select Receipt_ID from cms_receipt where 1=1 ';
if p_receiptNO <> '''' then
ssql := ssql||' and Receipt_ID like ''%'||p_receiptNO||'%''';
end if;
execute immediate ssql;
open p_cur for select * from tem_Rep_Cms_auditinfo;
end Cal;
在SQL*PLUS调用的时候,这样 Cal(p_receiptNO => 'CAN')提示参数个数或类型不匹配,难道要给 p_cur也传参数吗?