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;

解决方案 »

  1.   

    上贴不对
    variable job1 number;begin
    dbms_job.submit(:job1,'pro;',to_date('2003-9-7','yyyy-mm-dd'),'sysdate+7'); 
    end;
      

  2.   

    如果要星期日的00:00:01执行是不是:
    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;
    谢谢~
      

  3.   

    最好是
    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;
      

  4.   

    我发现如果JOB如果是一秒中只一次。
    我自己写的。已经可以执行。但是发现他虽然是一秒执行一,但是那执行能够的时间在不断的推移:
    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执行啊。可以提交下次作业在执行这次的任务的吗?