oracle job脚本备忘
--脚本
DECLARE
X NUMBER;
BEGIN
SYS.DBMS_JOB.SUBMIT
( job => X
,what => 'declare outa varchar2(80);outb varchar2(80);
begin
check_log_znw(outa,outb);
end;'
,next_date => SYSDATE
,interval => 'trunc(SYSDATE)+23.8/24+1'
,no_parse => TRUE
);
SYS.DBMS_OUTPUT.PUT_LINE('Job Number is: ' || to_char(x));
END;
/
--注释
1、trunc(SYSDATE)+23.8/24+1,若trunc(SYSDATE)为2010-9-29,则下次启动时间2010-9-30 23:48:00,以后每天23:48:00启动;
2、23.8/24 为23:8*6分
3、select trunc(SYSDATE) from dual;
--2010-9-29
select trunc(SYSDATE,'yyyy') from dual;
--2010-1-1
select trunc(SYSDATE,'mm') from dual;
--2010-9-1
select trunc(SYSDATE,'dd') from dual;
--2010-9-29
本文提供了一个 Oracle DBMS_JOB 进程调度的示例脚本,演示了如何设置定时任务,包括指定任务执行的 SQL 语句、设置首次执行时间和周期等。通过示例展示了如何使用 trunc 函数配合 SYSDATE 来实现每天特定时间执行任务。
849

被折叠的 条评论
为什么被折叠?



