declare job1 number;
begin
dbms_job.submit(job1,'TEST;',sysdate,'sysdate+5/24*60');
commit;
dbms_job.run(job1);
end;上面一段SQL是每5分钟执行TEST,我的问题是:
1、怎么停止job1,我用
declare job1 number;
begin
dbms_job.remove(job1);
end;
告诉我“作业编号在作业队列中不是一个作业”。
2、如果数据库重新启动,那么作业还会不会继续起作用?如果不起作用,那怎么样才能让它一直执行?
3、如何查看当前有那些作业在执行?
4、上面的一段SQL能每5分钟执行一次吗,如果不能,错在那里?
begin
dbms_job.submit(job1,'TEST;',sysdate,'sysdate+5/24*60');
commit;
dbms_job.run(job1);
end;上面一段SQL是每5分钟执行TEST,我的问题是:
1、怎么停止job1,我用
declare job1 number;
begin
dbms_job.remove(job1);
end;
告诉我“作业编号在作业队列中不是一个作业”。
2、如果数据库重新启动,那么作业还会不会继续起作用?如果不起作用,那怎么样才能让它一直执行?
3、如何查看当前有那些作业在执行?
4、上面的一段SQL能每5分钟执行一次吗,如果不能,错在那里?
找到这个job的job号
exec dbms_job.remove(job号);
2.会的
3.通过查询all_jobs
4.应该可以
2.如果数据库重新启动,作业还会继续起作用---下一个周期
3.在企业管理器里(要以管理服务方式登录才可以的)或者PL/SQL Developer工具
4. 对
---------- ------------------------------
1 zb_attemper('102');
21 zb_attemper('101');
41 check_job;已用时间: 00: 00: 00.31
15:54:38 SQL> exec dbms_job.remove(21);