Oracle数据库定时器这个间隔写多少是让它整点或者正好半点的时候执行?

我来答
添加附件
收藏
复制链接
微信扫码分享
在小程序上查看
分享
添加附件
问题补充
3条回答
默认
最新
如果是每天一次的话
trunc(sysdate+1)+1/24,就是每天的1点;
trunc(sysdate+1)+1/48就是每天的0点半。
但如果是每隔一小时都要在整点运行的话,
建议使用schedule_job,支持比dbms_job更完善。当然非要用dbms_job也不是不行,只是这个会比较复杂,维护起来很麻烦,当你的运行时长超过间隔时长的时候问题就来了
评论
有用 1
这个主要看需求,选择具体的时间间隔,具体如下:
TRUNC :每分钟、每小时,每天执行
--每分钟执行
Interval => TRUNC(sysdate,'mi') + 1 / (24*60)
--每小时执行
Interval => TRUNC(sysdate,'mi') + 1 / 24
--每天的凌晨2点执行
Interval => TRUNC(sysdate) + 1 +2/24
NEXT_DAY : 可以设置每周
--每周一凌晨2点执行
Interval => TRUNC(next_day(sysdate,2))+2/24 --星期一(一周的第二天)
ADD_MONTHS :可以设置每季度,每半年,每年
--每季度的第一天凌晨2点执行
Interval => TRUNC(ADD_MONTHS(SYSDATE,3),'Q') + 2/24
LAST_DAY : 可以设置每月
--每月1日凌晨2点执行
Interval =>TRUNC(LAST_DAY(SYSDATE))+1+2/24
评论
有用 1回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
墨值悬赏

