Oracle基础包之DBMS_JOB(二)

1、概述
   DBMS_JOB包包含isubmit、submit、remove、change、what、next_date、instance、interval、broken、run、user_export等过程。主要用于安排和管理作业队列,通过使用作业,可以使ORACLE数据库定期执行特定的任务,这个包属于系统用户sys
2、包的构成
2.1、isubmit 和submit
说明:
此过程用于建立一个新作业。
注意事项:
当建立作业时,需要给作业要执行的操作,作业的下次运行日期及运行时间间隔。
语法:
dbms_out.submit (
job out binary_integer,what in varchar2,
next_date in date default sysdate,
interval in varchar2 default 'null',
no_parse in boolean default false,
instance in binary_integer default any_instance,
force in boolean default false);
--其中,job用于指定作业编号;what用于指定作业要执行的操作;next_date用于指定作业的下次运行日期;interval用于指定运行作业的时间间隔;
--no_parse用于指定是否解析与作业相关的过程;instance用于指定哪个例程可以运行作业;force用于指定是否强制运行与作业相关的例程.
示例:
exec dbms_job.submit(:jobno,'dbms_ddl.analyze_object(''table'',''scott'',''emp'',''compute'');',sysdate,'sysdate+1');
exec dbms_job.submit(:v_num,'a;',sysdate,'sysdate + (10/(24*60*60))')加入作业。间隔10秒钟
exec dbms_job.submit(:v_num,'a;',sysdate,'sysdate + (11/(24*60))')加入作业。间隔11分钟
2.2、remove
说明:
删除作业队列中的特定作业
注意事项:
语法:
dbms_job.remove(job in binary_integer);
示例:
exec dbms_job.remove(1)--删除1号作业
2.3、change
说明:
用于改变与作业相关的所有信息,包括作业操作,作业运行日期以及运行时间间隔等.
注意事项:
语法:
dbms_job.change(
job in binary_integer,what in varchar2,
next_date in date,interval in varchar2,
instance in binary_integer default null,
force in boolean default false);
示例:
exec dbms_job.change(2,null,null,'sysdate+2');
2.4、what
说明:
用于改变作业要执行的操作
注意事项:
语法:
dbms_job.what(job in binary_integer,what in varchar2);
示例:
exec dbms_job.what(2,'dbms_stats.gather_table_stats->(''scott'',''emp'');');
2.5、next_date
说明:
用于改变作业的下次运行日期
注意事项:
语法:
dbms_job.next_date(job in binary_integer,next_date in date);
示例:
exec dbms_job.next_date('2','sysdate+1');
2.6、instance
说明:
用于改变作业的例程
注意事项:
语法:
dbms_job.instance(job in binary_integer,instance in binary_integer,force in boolean default false);
示例:
exec dbms_job.instance(2,1);
2.7、interval
说明:
用于改变作业的运行时间间隔
注意事项:
语法:
dbms_job.interval(job in binary_integer,interval in varchar2);
示例:
exec dbms_job.interval(2,'sysdate+1/24/60');
2.8、broken
说明:
用于设置作业的中断标识。当中断了作业之后,作业将不会被运行。
注意事项:
语法:
dbms_job.broken(job in binary_integer,broken in boolean,next_date in date default sysdate);
-- 其中broken指定中断标记(true表示中断)
示例:
dbms_job.broken(2,true,'sysdate+1');
2.9、run
说明:
用于运行已存在的作业
注意事项:
语法:
dbms_job.run(job in binary_integer,force in boolean default false);
示例:
exec dbms_job.run(1);
2.10、user_export
说明:
用于作业导出
注意事项:
语法:
dbms_job.user_export ( 
job     IN     BINARY_INTEGER,
mycall   IN OUT VARCHAR2,
myinst   IN OUT VARCHAR2);
示例:
dbms_job.user_export(v_jobno, jobcall);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夜未央,流年殇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值