1、 在sqlplus或者pl/sql的命令行工具中创建Oracle 定时JOB的语法如下:
var jobnum number;
BEGIN
dbms_job.submit(:jobnum,
'SP_SYNC_DISPATCH_CENTER_CALC;',
to_date('2013-07-18 18:30:00','yyyy-mm-dd hh24:mi:ss'),
'TRUNC(SYSDATE+1)+(21*60+30)/(24*60)');
END;
/
说明:以上语句创建了一个从2013-07-18日开始每天晚上18:30分系统自动执行名称为SP_SYNC_DISPATCH_CENTER_CALC的存储过程的JOB。
2、 查询已创建的定时任务
SELECT * FROM USER_JOBS;
3、 手动修改下次执行时间
VAR jobnum = 创建job时系统自动生成的编号,即表USER_JOBS的ID。
execute dbms_job.change(:jobnum,
'SP_SYNC_DISPATCH_CENTER_CALC;',
to_date('2013-10-05 18:30:00','yyyy-mm-dd hh24:mi:ss'),
'TRUNC(SYSDATE+1)+(18*60+30)/(24*60)');
commit;
4、 手工任意时间执行编号为23的JOB
begin
dbms_job.run(23);
end;
/
本文详细介绍了在Oracle数据库中使用SQL Plus或PL/SQL创建、查询、修改和执行定时Job的方法。包括创建Job的语法示例,如何查询已创建的Job,手动修改Job的下一次执行时间,以及如何手动执行特定编号的Job。
943

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



