【发布时间】:2015-06-07 11:59:03
【问题描述】:
我有一个每日计划的作业,它运行一个在每天特定时间发送短信的程序。但是不能保证到那时会填充 sms 的源表,如果源表尚未填充,我希望能够将作业重新安排一个小时。 我该怎么办。
【问题讨论】:
标签: oracle oracle11g dbms-scheduler
我有一个每日计划的作业,它运行一个在每天特定时间发送短信的程序。但是不能保证到那时会填充 sms 的源表,如果源表尚未填充,我希望能够将作业重新安排一个小时。 我该怎么办。
【问题讨论】:
标签: oracle oracle11g dbms-scheduler
只需将作业安排为每小时,并在程序中设置一个条件,以便在无事可做时它不会执行任何操作。
--in pseudo code
CREATE OR REPLACE
Your_procedure is
v_count NUMBER(9);
BEGIN
select count(*)
INTO v_count
FROM sms_table;
IF v_count > 0 THEN
--do something
ELSE
--log the count into a logging table
END IF;
END;
Martin Fowler 提出的更复杂的方法this post 发人深省。
【讨论】: