如何删除oracle Job命令实例。
1.删除所有用户的JOB
begin
for v in(select job from user_jobs) loop
dbms_job.remove(v.job);
end loop;
commit;
end;
2.删除指定用户的JOB
define USER=&1
begin
for v in(select job from user_jobs where log_user='&USER') loop
dbms_job.remove(v.job);
end loop;
commit;
end;
3.删除特定内容的JOB
begin
for v in(select job from user_jobs where what
in(
'the_what_name;',
)
) loop
dbms_job.remove(v.job);
end loop;
commit;
end;
/
补充:
dba_jobs:
LOG_USER 提交任务的用户
PRIV_USER 赋予任务权限的用户
SCHEMA_USER 对任务作语法分析的用户模式
JOB始终没有运行问题
1.首先确认当前的Job Queue Processes的数目
SQL> select name,value from v$parameter where name ='job_queue_processes';
2.如果值为0 然后将Job Queue Processes的数目修改为大于0的数
SQL> ALTER SYSTEM SET job_queue_processes = 10;