variable job1 number;begin
dbms_job.submit(:job1,'pro;',to_date('2003-9-7','yyyy-mm-dd'),'to_date(''2003-9-7'',''yyyy-mm-dd'')+7');
end;
dbms_job.submit(:job1,'pro;',to_date('2003-9-7','yyyy-mm-dd'),'to_date(''2003-9-7'',''yyyy-mm-dd'')+7');
end;
variable job1 number;begin
dbms_job.submit(:job1,'pro;',to_date('2003-9-7','yyyy-mm-dd'),'sysdate+7');
end;
variable job1 number;begin
dbms_job.submit(:job1,'pro;',to_date('2003-9-7 00:00:01','yyyy-mm-dd hh24:mi:ss'),'sysdate+7');
end;
谢谢~
begin
dbms_job.submit(:job1,'pro;',to_date('2003-9-7 00:00:01','yyyy-mm-dd hh24:mi:ss'),'trunc(sysdate)++1/24/60');
end;
我自己写的。已经可以执行。但是发现他虽然是一秒执行一,但是那执行能够的时间在不断的推移:
declare
jobno number;
begin
dbms_job.submit(jobno,'pro;',trunc(sysdate),'sysdate+1/(24*60)');
commit;
end;
过程中往表插入一记录,某字段是STADATE,以下是结果:
TO_CHAR(B,'YYYY-MM-
-------------------
2003-09-08 09:38:15//次次都比上一次迟了一秒。
2003-09-08 09:39:17正确应该是:
2003-09-08 09:40:18 2003-09-08 09:40:15
2003-09-08 09:41:20 2003-09-08 09:41:15
2003-09-08 09:42:21 2003-09-08 09:42:15
2003-09-08 09:43:23
2003-09-08 09:44:24
2003-09-08 09:45:26
2003-09-08 09:46:27
2003-09-08 09:47:29
2003-09-08 09:48:30
他虽然一秒执行了一次,但是那时间怎么会变呢?如果我规定那过程每天必须在00:00:00执行。第一次执行是00:00:00,但第二次就不是了,是不是JIOB的先执行在提交?提交了一后才开始算出下次执行的时间?如果过程很复杂。执行一次要30分钟,那没这个时间差别不是很大。如果我希望我的JOB在每天的00:00:00执行,假设执行一次需要30分钟,那么第1次执行是00:00:00,那第二次就是:00:30:00了,三次就是:01:00:00了。
但我就要他次次都在00:00:00执行啊。可以提交下次作业在执行这次的任务的吗?