如何在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;
如何执行一个程序在同一时间内的另一个程序?如何在Oracle的其他程序中调用程序,Sql Developer?
如何创建多值参数,意味着第二个程序里面依赖于第一个程序的参数?
在问题嵌套过程的例子中,只声明但从未调用。要运行嵌套过程的调用必须BEGIN
和END
语句之间存在:
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;
问号应该通过适当的变量来代替。
对于愚蠢的问题感到抱歉。 –
它是如何执行的?我在SQL Developer的程序设置中尝试它,但是一样。 –
http://www.oracle.com/technetwork/topics/o67sql-101793.html – kpater87
就像任何其他PL/SQL程序一样。您可以使用'o_name'和'o_capitan'作为过程'showhipsDisp'的输入参数。 – kpater87
试试吧,但它只是打电话首先不是在里面 –
你能告诉我们你试过了什么?示例不显示您要在哪里调用嵌套过程。 – kpater87