oracle创建job
发布时间:2020-12-12 16:01:17 所属栏目:百科 来源:网络整理
导读:一、基本语法 与mysql的event事件类似,用来创建数据库的定时任务。 DBMS_JOB.SUBMIT( job OUT BINARY_INTEGER,what IN VARCHAR2,NEXT_DATE IN DATE DEFAULTSYSDATE,interval IN VARCHAR2 DEFAULT 'NULL', no_parse IN BOOLEAN DEFAULT FALSE ,instance IN B
一、基本语法与mysql的event事件类似,用来创建数据库的定时任务。 DBMS_JOB.SUBMIT(
job OUT BINARY_INTEGER,what IN VARCHAR2,NEXT_DATE IN DATE DEFAULTSYSDATE,interval IN VARCHAR2 DEFAULT 'NULL',
no_parse IN BOOLEAN DEFAULT FALSE,instance IN BINARY_INTEGER DEFAULT ANY_INSTANCE,force IN BOOLEAN DEFAULT FALSE);
使用示例: declare
tm_job number;
begin sys.dbms_job.submit(:tm_job,'prc_job_test;',sysdate,'sysdate+1/(24*60)');--每隔1分钟执行一次
end;
二、基本使用方法1、oracle 10g默认允许的job队列为10个,可以通过命令查看 scope作用域介绍:
2、对job进行修改 BEGIN DBMS_JOB.CHANGE(14144,null,'sysdate+3');
COMMIT;
END;
修改其他参数类似,例如修改INTERVAL DBMS_JOB.INTERVAL (
job IN BINARY_INTEGER,interval IN VARCHAR2);
2、删除job DBMS_JOB.REMOVE (
job IN BINARY_INTEGER );
3、常用定时 select trunc(sysdate,'yyyy') from dual --2016-01-01 当年第一天
select trunc(sysdate,'dd') from dual --2016-09-05 当天
select trunc(sysdate,'hh') from dual --2016-09-05 17:00:00 精确到小时
select trunc(sysdate,'mi') from dual --2016-09-05 17:35:00 精确到分
select trunc(123.458,-1) from dual --120
select trunc(123.458,1) from dual --123.4
在job中的灵活时间设定 TRUNC(sysdate,'mi')+1/(24*60) --每分钟执行
TRUNC(sysdate+1) --每天凌晨0点执行
TRUNC(sysdate+1)+1/24 --每天凌晨1点
TRUNC(SYSDATE+1)+(8*60+30)/(24*60) --每天早上8点30分执行
TRUNC(next_day(sysdate,1))+2/24 --每周一凌晨2点执行
TRUNC(LAST_DAY(SYSDATE)+1) --每月1日凌晨0点执行 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |