写了个测试的存储过程,
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也传参数吗?