我想知道在IF语句中使用过程参数在技术上是否可行,或者如何以不同的方式解决这个问题。
情况描述: 我在其他过程中有一个过程,其中内部过程的参数是外部过程的参数。我会 喜欢在IF语句中使用内部过程的参数,例如:IF parameter1 OR parameter2 OR parameter3 IS NOT NULL THEN。 。值得一提的是外部过程的所有参数都必须是DEFAULT NULL。有任何想法吗?干杯。
答案 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;