sql - 基于视图条目在存储过程中引发异常
问题描述
我有一个存储过程。我想实现以下我用伪代码编写的逻辑。
如果以下查询具有多个条目之一:
SELECT
NULL
FROM
table1
WHERE
condition
GROUP BY
column
HAVING
COUNT(1) > 1
UNION ALL
SELECT
NULL
FROM
table1 a
WHERE
condition
AND EXISTS (
SELECT
NULL
FROM
table2 b
WHERE
condition
);
然后引发异常并停止存储过程。
解决方案
如果从查询中找到特定值,以下是引发异常的示例:
declare
somevar dual.dummy%type;
begin
select 'Y' into somevar
from dual;
if somevar = 'Y' then
raise_application_error(-20123, 'Hull breach on deck 15. Abandon ship.');
end if;
end;
“从对偶中选择”可以是任何查询,因此请随意替换您的联合和计数(尽管我们应该真正坚持标准count(*)
,而不是count('Dracula')
等等)。
推荐阅读
- ruby-on-rails - 如何使用 rails datagrid gem 右对齐或小数对齐数字
- gnuplot - Converting plot X, Y to location to draw arrow/line
- jmeter - 当我同时使用 Jmeter 5.0 和 Jmeter Maven Plugin 2.7 时,它默认不会生成 JTL 文件
- python - 使用 __repr__ Python
- java - 在特殊情况下通过转义分隔符来计算出现次数
- dockerfile - Fat Jar 实现语言服务器
- python - 尝试从列表中删除时跳过的元素
- javascript - 高图不显示
- python - 在 python 中分配环境变量和运行 shell 脚本
- javascript - javascript for 循环提前退出