【发布时间】:2019-08-23 11:54:09
【问题描述】:
我的要求是编写一个只有在记录被插入到表中时才完成执行的块,通常我会在下面做的事情
set serveroutput on;
DECLARE
l_output NUMBER;
BEGIN
select count(*) INTO l_output from TABLE_NAME where COLUMNNAME = 'DUMMY' and COLUMNNAME1= 'DUMMY1';
FOR i IN 0..l_output
LOOP
DBMS_OUTPUT.PUT_LINE(l_output);
EXIT WHEN l_output=1;
END LOOP;
END;
但是如果 SQL 语句没有返回任何记录,则此代码块将停止执行我希望此块执行,直到 count(*)>1 再次变为真我知道这可能导致此块无限期地等待,直到将记录插入此表中。想法是如果不满足count(*)>1 条件,则块应继续执行或等待count(*)>1 条件变为真。
【问题讨论】:
-
这个脚本有什么需要?它是否用于某种监控?您是否要持续监控在控制台中运行的此脚本?如果您告诉我们您想要实现的目标,可能还有其他几种方法可以解决此问题。