Job的使用
Job的使用
创建job
SQL> variable job number; SQL> begin 2 dbms_job.submit(:job,'begin p_update_emp(7311,''zhoulumin''); end;',sysdate,'sysdate+1/1440'); 3 commit; 4 end; 5 / |
运行job
SQL> begin 2 dbms_job.run(:job); 3 end; 4 / |
查询job的详细信息
select * from dba_jobs |
Job操作相关的过程
1、submit()创建job
PROCEDURE 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 0, force IN BOOLEAN DEFAULT FALSE ); |
参数说明:
job:用于指定作业编号(输入值)
what:用于指定作业要执行的操作(输入值)
next_date:用于指定作业的下次运行日期; (输入值)
Interval:用于指定运行作业的时间间隔; (输入值)
no_parse:指示此工作在提交时或执行时是否应进行语法分析
instance:用于指定哪个例程可以运行作业
force:用于指定是否强制运行与作业相关的例程
2、isubmit()创建指定工作号的job
PROCEDURE isubmit( job IN BINARY_INTEGER, what IN VARCHAR2, next_date IN DATE, interval IN VARCHAR2 DEFAULT 'null', no_parse IN BOOLEAN DEFAULT FALSE); |
参数说明:
job:用于指定作业编号(输入值)
what:用于指定作业要执行的操作(输入值)
next_date:用于指定作业的下次运行日期; (输入值)
Interval:用于指定运行作业的时间间隔; (输入值)
no_parse:指示此工作在提交时或执行时是否应进行语法分析
3、run()执行指定的job
PROCEDURE run ( job IN BINARY_INTEGER, force IN BOOLEAN DEFAULT FALSE); |
参数说明:
job:用于指定作业编号(输入值)
4、remove()删除已经运行的job
PROCEDURE remove ( job IN BINARY_INTEGER ); |
参数说明:
job:用于指定作业编号(输入值)
5、change()过程用来改变指定job的设置
PROCEDURE 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); |
参数说明:
job:用于指定作业编号(输入值)
what:用于指定作业要执行的操作(输入值)
next_date:用于指定作业的下次运行日期; (输入值)
Interval:用于指定运行作业的时间间隔; (输入值)
instance:用于指定哪个例程可以运行作业
force:用于指定是否强制运行与作业相关的例程
6、what()在job执行时重新设置此正在运行的命令
PROCEDURE what( job IN BINARY_INTEGER, what IN VARCHAR2 ); |
参数说明:
job:用于指定作业编号(输入值)
what:用于指定作业要执行的操作(输入值)
7、next_date()显式地设定一个job的执行时间
PROCEDURE next_date ( job IN BINARY_INTEGER, next_date IN DATE); |
参数说明:
job:用于指定作业编号(输入值)
next_date:用于指定作业的下次运行日期; (输入值)
8、instance()用于改变作业的例程
PROCEDURE instance ( job IN BINARY_INTEGER, instance IN BINARY_INTEGER, force IN BOOLEAN DEFAULT FALSE); |
job:用于指定作业编号(输入值)
instance:用于指定哪个例程可以运行作业
force:用于指定是否强制运行与作业相关的例程
9、interval()显式地设置执行一个job的时间间隔数
PROCEDURE interval ( job IN BINARY_INTEGER, interval IN VARCHAR2 ); |
参数说明:
job:用于指定作业编号(输入值)
Interval:用于指定运行作业的时间间隔; (输入值)
10、broken()更新一个已提交的工作的状态,典型地是用来把一个已破工作标记为未破工作
PROCEDURE broken( job IN BINARY_INTEGER, broken IN BOOLEAN, next_date IN DATE DEFAULT SYSDATE ); |
参数说明:
job:用于指定作业编号(输入值)
broken:此工作是否将标记为破——TRUE说明此工作将标记为破,而FLASE说明此工作将标记为未破
next_date:用于指定作业的下次运行日期; (输入值)
11、user_export()返回一个命令,此命令用来安排一个存在的job以便此job能重新提交。
PROCEDURE user_export ( job IN BINARY_INTEGER, mycall IN OUT VARCHAR2); |
参数说明:
job:用于指定作业编号(输入值)
mycall:包含在它的当前状态重新提交此job所需要的正文