在多个 pl sql 块上使用条件
Posted
技术标签:
【中文标题】在多个 pl sql 块上使用条件【英文标题】:using condition on more than one pl sql blocks 【发布时间】:2018-11-14 16:46:50 【问题描述】:是否可以在多个 pl sql 块上使用一个条件 而不是在所有块中重复某些条件? 例如这样的:
BEGIN
select user_id from users
if :app_user_id = user_id
then do the bottom blocks
begin
end ;
begin
end ;
begin
end ;
END ;
【问题讨论】:
可能是嵌套块? plsqltutorial.com/plsql-nested-block 了解更多关于你的块做什么的细节会很有帮助 - 如果处理相关,为什么你有单独的块(有一个控制条件表明)。 【参考方案1】:根据我对问题的理解,您需要检查代码中不同点的条件。
您可以将一个条件放入过程/函数中(取决于您的代码)并执行相同的操作,而不是一次又一次地放下这些条件。
如果我的理解有误,请纠正我。
【讨论】:
【参考方案2】:有可能,为什么不呢?
我不知道这是多么明智(您在同一级别使用两个连续的执行块来完成,而您无法在一个块中完成),但它可能是。例如:
begin
if 3 > 1 then
begin
dbms_output.put_line('First line');
end;
begin
dbms_output.put_line('Second line');
end;
end if;
end;
/
输出(显然,SET SERVEROUTPUT ON
首先,如果尚未打开):
First line
Second line
PL/SQL procedure successfully completed.
【讨论】:
以上是关于在多个 pl sql 块上使用条件的主要内容,如果未能解决你的问题,请参考以下文章