【发布时间】:2016-01-04 13:05:30
【问题描述】:
我正在尝试编写一个函数,该函数将一直运行,直到将某些内容插入我的表中。我希望它每 10 秒检查一次给我输出消息的条目。
我知道我必须使用 dbms_lock.sleep(10) 和 while 循环。
但任何其他建议都会非常有帮助。
【问题讨论】:
-
永久轮询数据库听起来完全是矫枉过正。为此使用前/后插入触发器。
-
您可以使用 DBMS 计划。一旦一个函数被安排为每 10 分钟运行一次。如果函数返回任何输出,您可以继续您的流程。
-
我同意弗兰克的观点。您可以将触发器与 Oracle 的通知系统结合使用:docs.oracle.com/cd/E11882_01/appdev.112/e41502/… 或 docs.oracle.com/cd/E11882_01/appdev.112/e41502/…
标签: sql function plsql oracle11g