create or replace procedure p_web_query_card(
v_card      in    varchar2,
v_password  in    varchar2,
v_charge    out   number ,
v_errorinfo       out  varchar2  )isbegin
   v_charge:=10;
   v_errorinfo:=null;   dzsw.p_web_query_card_jf@yytol(v_card => v_card ,v_password => v_password ,
   v_charge => v_charge ,v_errorinfo => v_errorinfo );   commit;end ;commit前面那句语句的意思是什么呢??

解决方案 »

  1.   

    带名标志法调用存储过程。它用“=>”将每一个实际参数和形式参数对应起来,在调用存储过程时可以任意调换参数的位置,而不需考虑存储过程中参数的位置。你的存储过程可以这样调用:
    Declare
      v_card1      varchar2(20);
      v_password2  varchar2(20);
      v_charge3    number;
      v_errorinfo4 varchar2(100);
    Begin
      v_card1:='1002003001';
      v_password2:='123456';
      v_charge3:=8;
      v_errorinfo4:='System Error';
      p_web_query_card(v_errorinfo=>v_errorinfo4,v_password=>v_password2,v_charge=>v_charge3,v_card=>v_card1);
    End;
      

  2.   

    多谢楼上的,
    主要是下面这段
    dzsw.p_web_query_card_jf@yytol我估计是通过yytol 访问dzsw包下面的p_web_query_card_jf 的存储过程,不知道对不对??
      

  3.   

    @后面的好像应该是数据库名,你看看建了哪些DBLINK。