IF语句使用过程参数?

时间:2018-05-13 09:03:08

标签: sql oracle procedure

我想知道在IF语句中使用过程参数在技术上是否可行,或者如何以不同的方式解决这个问题。

情况描述: 我在其他过程中有一个过程,其中内部过程的参数是外部过程的参数。我会 喜欢在IF语句中使用内部过程的参数,例如:IF parameter1 OR parameter2 OR parameter3 IS NOT NULL THEN。 。值得一提的是外部过程的所有参数都必须是DEFAULT NULL。有任何想法吗?干杯。

1 个答案:

答案 0 :(得分:0)

你打算这样做:

--first procedure

CREATE OR REPLACE PROCEDURE p1(f_name varchar2 ,sal NUMBER )
IS 
BEGIN 

p2(f_name,sal);

END;

--second procedure

CREATE OR replace PROCEDURE p2(f_name varchar2 ,sal NUMBER )
IS 
BEGIN 

IF f_name IS NOT NULL OR sal IS NOT NULL
THEN 
dbms_output.put_line(f_name ||'   '||sal);
END IF;

END;

然后调用第一个程序:

BEGIN 
    p1( 'john',null );
END;