ORACLE存储过程中,如何调用另外一个带参数(一入一出参数)的存储过程?

解决方案 »

  1.   

    create or replace procedure t1_pro(id varchar2) is
    begin
      t2_pro(id);
    end;
      

  2.   

    SQL> 
    SQL> CREATE TABLE test
      2  (a VARCHAR2(10),
      3   b VARCHAR2(10));
     
    Table created
     
    SQL> 
    SQL> CREATE OR REPLACE PROCEDURE proc_test(i_input VARCHAR2 ,
      2                                       o_return OUT VARCHAR2)
      3  AS
      4  BEGIN
      5   INSERT INTO test(a)
      6   VALUES(i_input);
      7   o_return:='OK';
      8  END;
      9  /
     
    Procedure created
     
    SQL> 
    SQL> CREATE OR REPLACE PROCEDURE proc_test1(i_input VARCHAR2 ,
      2                                       o_return OUT VARCHAR2)
      3  AS
      4  BEGIN
      5   proc_test(i_input ,o_return);
      6   o_return:='OK';
      7  END;
      8  /
     
    Procedure created
     
    SQL>