繁体   English   中英

在多个pl sql块上使用条件

using condition on more than one pl sql blocks

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

是否可以在多个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 ;
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.
1 PL-SQL条件块

我在插入if语句时遇到错误,即如果B列为NULL,我需要忽略特定行,因为某些数据是预期的并且处理下一个其他记录 ...

2 使用 PL/SQL 检查多个条件

在我的代码中,我需要检查 IF 语句中多个值的变量。 我在用: 有没有办法更优雅地做到这一点,在 SQL 中添加一个IN子句? 我尝试使用MEMBER OF 但这没有用 ...

2021-05-19 18:35:39 2 34   plsql
4 我可以在PL / SQL块中使用REGEXP_LIKE作为IF的条件吗

我正在尝试创建一个功能,该功能旨在遍历一棵组织单位的树,并根据它们在树状结构中的等级以及它们在我们的Intranet页面上显示的天气来过滤掉一些。 该函数的输入是起始单元的ORG_UNIT_ID,该标志用于显示我们是否应该关心Intranet标志以及逗号分隔的级别列表。 例如“ 2,3”。 ...

5 多个条件在哪里(PL / SQL)

我有这些table_1: 我需要删除字段B,C和D为空的记录。 可以吗 但是如果我还有另一个具有多个字段的表:A,B,C,D,E,F .... Z,AA,AB ..... BA ... 在这种情况下最好的方法是什么? ...

6 使用PL / SQL的日期和条件

我在下面的过程中遇到问题,因为每当我经过月份和年份的日期时,IF条件就会循环使用表中存在的记录数-仅存在两行-并且它显示了两种可能性。 我还包括结果以表明我的意思! 调用块: / 这是我通过的日期与表中的记录匹配的时间: 当我传递表中不存在的日期时,结果如下: ...

8 如何使用DDL语句跟随PL / SQL块

如何使用DDL语句跟随PL / SQL块? 我正在尝试做这样的事情: 但是我收到一条错误消息: 我应该在街区之外,对吗? 这是一个非常简化的版本,实际的脚本将检查是否存在许多事物,并删除,重新创建并反复更改许多对象及其许多属性。 将它们全部放入动态SQL字符串中并使 ...

9 使用Java运行PL / SQL块

说我有以下程序 - 使用spring jdbc我已经创建了一个数据源> I没有将此过程存储在数据库中。 这些程序在java方面硬编码。 如何使用java运行此SQL块? ...

10 在PL \\ SQL块中使用EXECUTE IMMEDIATE

在PL \\ SQL块中使用EXECUTE IMMEDIATE会立即提交整个块​​。 正如你意识到我甚至不使用COMMIT。 关于上面的代码, “插入到”语句有效,但“create table”语句抛出异常,因为数据库中已存在具有相同名称的表。 我没有任何提交语句和代码块掉 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM