1、每天定点执行

declare
jobno number;
v_starttime date;
v_interval varchar2(100);
begin

v_starttime := trunc(sysdate + 1, 'dd') + 9.5 / 24; --运行时间:次日09:30运行
v_interval := 'trunc(sysdate +1, ''dd'') + 9.5 / 24'; --间隔时间:每天运行一次
dbms_job.submit(jobno, 'p_dt_attendance_listrecord_job;', v_starttime, v_interval);
end;

2、每过2小时执行一次

declare
jobno number;
BEGIN
DBMS_JOB.SUBMIT(
JOB => jobno, /*自动生成JOB_ID*/
WHAT => 'P_DT_gettoken_job;', /*需要执行的存储过程名称或SQL语句*/
NEXT_DATE => sysdate+1/(24*60*60), /*初次执行时间下一秒*/
INTERVAL => 'sysdate+2/24' /*每隔2小时执行一次*/
);
commit;
end;

3、作业修改

declare
jobno number;
v_starttime date;
v_interval varchar2(100);
begin
jobno := 1;
v_starttime := trunc(sysdate + 1, 'dd') + (8*60+20)/(24*60); --运行时间:次日08:20运行
v_interval := 'trunc(sysdate +1, ''dd'') + (8*60+20)/(24*60)'; --间隔时间:每天运行一次
dbms_job.change(jobno, 'p_dt_attendance_listrecord_job;', v_starttime, v_interval);
end;