是否必须在PL / SQL中为OUT参数赋值?

时间:2012-02-14 14:50:20

标签: oracle plsql out-parameters

create or replace procedure ppp(ot OUT number)
is
begin
null;
end;
/

调用时效果很好。

3 个答案:

答案 0 :(得分:6)

Oracle documentation输出参数:

  

正式参数的作用类似于未初始化的变量。

如果你没有指定一个值,那就好了。

DECLARE
  d  NUMBER;
BEGIN
  ppp( d );

  IF ( d IS NULL )
  THEN
    DBMS_OUTPUT.put_line( 'NULL' );
  END IF;
END;

将NULL写入dbms输出

答案 1 :(得分:0)

来自http://docs.oracle.com/cd/B10501_01/appdev.920/a96624/08_subs.htm#917

  

与变量一样,OUT形式参数初始化为NULL。

     

在退出子程序之前,明确地为所有OUT形式参数赋值。否则,相应的实际参数将为null。

答案 2 :(得分:-1)

测试运行表明这是必要的,但不是强制性的。