job创建
1,创建语句
declare
job_id number;
begin
dbms_job.submit(job_id,'
declare on_rtncode number;
on_rtnmsg varchar2(32767);
begin
GBRP_REPORT_PROC_EXECUTE_P(on_rtncode,on_rtnmsg);
end;
',sysdate,'sysdate+300');
commit;
end;
说明:sysdate代表立即执行,sysdate+300代表间隔300天执行一次脚本(GBRP_REPORT_PROC_EXECUTE_P).
2, 查看启用的job:
select * from user_jobs;
3,移除job:58为job_id的一个值
begin
dbms_job.remove(58);
end;
4,停止job:58为job_id的一个值
begin
dbms_job.broken(58,true);
end;
5,查看正在运行的job:
select * from dba_jobs_running;
6,指定nest_date时刻停止job:58为job_id的一个值
begin
dbms_job.broken(58,true,nest_date);
end;
7,job时间:
sysdate+1/24 代表一个小时 sysdate+1/1440 代表一个分钟 sysdate+1/86400 代表一个秒
sysdate+1 代表一天 sysdate+7 代表一个星期 add_months(sysdate,12) 代表1年
next_day(trunc(sysdate),'星期五')+12/24 代表每个星期五中午
1,创建语句
declare
job_id number;
begin
dbms_job.submit(job_id,'
declare on_rtncode number;
on_rtnmsg varchar2(32767);
begin
GBRP_REPORT_PROC_EXECUTE_P(on_rtncode,on_rtnmsg);
end;
',sysdate,'sysdate+300');
commit;
end;
说明:sysdate代表立即执行,sysdate+300代表间隔300天执行一次脚本(GBRP_REPORT_PROC_EXECUTE_P).
2, 查看启用的job:
select * from user_jobs;
3,移除job:58为job_id的一个值
begin
dbms_job.remove(58);
end;
4,停止job:58为job_id的一个值
begin
dbms_job.broken(58,true);
end;
5,查看正在运行的job:
select * from dba_jobs_running;
6,指定nest_date时刻停止job:58为job_id的一个值
begin
dbms_job.broken(58,true,nest_date);
end;
7,job时间:
sysdate+1/24 代表一个小时 sysdate+1/1440 代表一个分钟 sysdate+1/86400 代表一个秒
sysdate+1 代表一天 sysdate+7 代表一个星期 add_months(sysdate,12) 代表1年
next_day(trunc(sysdate),'星期五')+12/24 代表每个星期五中午