您的位置:首页 > 数据库

数据库常创建一个job定时跑作业

2018-02-27 18:03 204 查看
                                                  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  代表每个星期五中午

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: