我是DBMS_SCHEDULER
的新手,在阅读了Oracle的文档之后,我想知道是否有人可以检查重复间隔的语法?
每日凌晨3点
FREQ=DAILY;BYHOUR=3
星期日凌晨3点
FREQ=WEEKLY;BYDAY=SUN;BYHOUR=3
本月初,凌晨3点
FREQ=MONTHLY;BYMONTHDAY=1;BYHOUR=3
每季度(1月,4月,7月,10月初),凌晨3点
FREQ=YEARLY;BYDATE=0101,0401,0701,1001;BYHOUR=3
每年8月1日凌晨3点
FREQ=YEARLY;BYDATE=0801;BYHOUR=3
答案 0 :(得分:3)
你的间隔很模糊,因此可能无法在你预期的时候开始。
例如,假设您在dbms_scheduler.create_job
处运行了16:09:12
。您的重复间隔FREQ=DAILY;BYHOUR=3
意味着该作业将在第二天03:09:12
开始。所以实际上你得到了你所要求的。
如果你想让工作从凌晨3点开始,那么
freq=DAILY;byhour=3; byminute=0; bysecond=0;
所有示例都是如此。虽然你拥有的东西还可以,但它们只能在一小时内完成,Oracle将从提交时间中选择分钟和秒钟。