当定义Oracle定时任务时,时间间隔的定义是,一次任务的结束时刻到另一次任务的开始时刻。例:select (TRUNC(sysdate,"mi") + 1 / (24*60)),(sysdate + 1 / (24*60)) from dual错误:sysdate + 1 / (24*60)作为时间间隔,这样每次计算下次执行时间时,会把当前时间加进去,也就是任务的执行时间被加进去了。正确:TRUNC(sysdate,"mi") + 1 / (24*60),用trunc忽略当前时间的误差(就是执行任务多出的时间)。这里首先我们要有共识,即按分钟跑的任务执行时间不能超过一分钟,按小时跑的任务执行时间不能超过一个小时,按天执行的任务执行时间不能超过一个小时。这样我们就可以用trunc去大胆的忽略,小时:TRUNC(sysdate,"hh24") + 1 / 24, 天:TRUNC(sysdate,"dd") + 1Ubuntu Server下无界面安装Oracle笔记五种Oracle用户的授权与管理相关资讯 Oracle教程
- Oracle中纯数字的varchar2类型和 (07/29/2015 07:20:43)
- Oracle教程:Oracle中查看DBLink密 (07/29/2015 07:16:55)
- [Oracle] SQL*Loader 详细使用教程 (08/11/2013 21:30:36)
| - Oracle教程:Oracle中kill死锁进程 (07/29/2015 07:18:28)
- Oracle教程:ORA-25153 临时表空间 (07/29/2015 07:13:37)
- Oracle教程之管理安全和资源 (04/08/2013 11:39:32)
|
本文评论 查看全部评论 (0)