--创建测试表名
create table job_table(run_date date);
--创建存储过程
create or replace procedure job_proc as
begin
insert into job_table (run_date) values (sysdate);
end;--创建job并指定一分钟执行一次
declare
job number;
begin
dbms_job.submit(job,"job_proc;",sysdate,"TRUNC(sysdate,""mi"")+1/(24*60)");
end;commit;
--暂停任务--select job from user_jobs
找出job的id值,然后使用下面的放语句停止任务。begin
dbms_job.broken(584,true);
end;
--重启任务begin
dbms_job.run(584);
end;
--删除任务
delete user_jobs where job=584;
drop procedure job_proc;
drop table job_table; 创建job后。系统即会在指定时间里自动调用该存储过程。
关于时间间隔的相关知识:1.TRUNC(for dates) TRUNC函数为指定元素而截去的日期值。 其具体的语法格式如下: TRUNC(date[,fmt]) 其中: date 一个日期值 fmt 日期格式,该日期将由指定的元素格式所截去。忽略它则由最近的日期截去 下面是该函数的使用情况: TRUNC(TO_DATE("24-Nov-1999 08:00 pm"),"dd-mon-yyyy hh:mi am") ="24-Nov-1999 12:00:00 am" TRUNC(TO_DATE("24-Nov-1999 08:37 pm","dd-mon-yyyy hh:mi am"),"hh") ="24-Nov-1999 08:00:00 am" trunc(sysdate,"yyyy") --返回当年第一天. trunc(sysdate,"mm") --返回当月第一天. trunc(sysdate,"d") --返回当前星期的第一天. trunc(sysdate,"dd")--返回当前年月日
trunc函数后面加的数字的单位是天。
每天凌晨0点0分:trunc(sysdate+1)每天早上8点 trunc(sysdate+1)+1/3每天早上8点30分 trunc(sysdate+1)+(8.5*60)/(24*60)每天早上8点30分 trunc(sysdate+1)+8.5/24每天早上8点30分 trunc(sysdate+1)+(8*60+30)/(24*60)数据库连接查询Oracle 丢失更新问题的解决方案相关资讯 Oracle数据库 Oracle入门教程 oracle数据库教程
- Oracle数据库全球化 (03月01日)
- Oracle数据库日期过滤方法性能比较 (02/02/2015 13:20:26)
- Oracle数据库安装中端口被占用问题 (10/29/2014 07:42:24)
| - 在CentOS 6.6上搭建C++运行环境并 (10/10/2015 19:44:40)
- Oracle数据库无法使用localhost和 (11/14/2014 16:39:10)
- 使用SQLT来构建Oracle测试用例 (08/28/2014 06:17:41)
|
本文评论 查看全部评论 (0)