繁体   English   中英

如何在Oracle,Sql Developer的另一个过程中调用过程?

[英]How call procedure inside in another procedure in Oracle, Sql Developer?

CREATE OR REPLACE PROCEDURE ShowShips3Task(
       p_Register IN ship.registry_country%TYPE,
       o_name OUT ship.ship_name%TYPE,
       o_capitan OUT  ship.captain_name%TYPE)
IS
   procedure showshipsDisp(
    o_cap out Ship.captain_name%type,
    o_dis out Ship.displacement%type)
    is
    begin
    Select Captain_name, Displacement
    into o_cap, o_dis
    from Ship Where Ship_name = 'Avrora';
    end;

BEGIN

  SELECT Ship_name , Captain_Name
  INTO o_name, o_capitan
  from  Ship WHERE registry_country LIKE p_register || '%';

END;

如何在另一个内部同时执行一个过程?

以及如何创建多值参数,意味着内部的第二个过程取决于第一个过程的参数?

在问题的示例中,嵌套过程仅被声明,而从未被调用。 要运行嵌套过程,必须在BEGINEND语句之间进行调用:

BEGIN

  SELECT Ship_name , Captain_Name
  INTO o_name, o_capitan
  from  Ship WHERE registry_country LIKE p_register || '%';

  showshipsDisp(o_cap => ?
               ,o_dis => ?);

END;

问号应替换为适当的变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM