oracle中存储过程执行的问题

来源:百度知道 编辑:UC知道 时间:2024/06/21 12:39:32
begin
存储果成名;
end;

和execute 存储过程名,这两者似乎是等效的?是这样的吗?

发两个例子你仔细看。
--1.存储过程
create or replace procedure print(msg varchar2)
is
begin
dbms_output.put_line(msg);
end;

--1.1 调用存储过程
execute print('helloworld');

--1.3 传递参数
create or replace procedure myabs(p_num1 IN number,p_num2 OUT number)
is
begin
if p_num1 >0 then
p_num2 := p_num1;
else
p_num2 := (0 - p_num1);
end if;
end;

--调用
declare
v_result number;
begin
myabs(-987,v_result);
print(v_result);
end;