一
sql> alter system set job_queue_processes=n;(n>
job_queue_processes最大值為
查看job queue 後台進程
sql>select name
二
包含以下子過程
Broken()過程
change()過程
Interval()過程
Isubmit()過程
Next_Date()過程
Remove()過程
Run()過程
Submit()過程
User_Export()過程
What()過程
這個過程有三個參數
PROCEDURE Broken (job IN binary_integer
Broken IN boolean
next_date IN date :=SYSDATE)
job參數是工作號
broken參數指示此工作是否將標記為破——TRUE說明此工作將標記為破
next_date參數指示在什麼時候此工作將再次運行
job如果由於某種原因未能成功之行
a
sql>begin
sql>dbms_job
sql>end;
sql>/
b
sql>begin
sql>dbms_job
sql>end;
sql>/
這個過程有四個參數
PROCEDURE Change (job IN binary_integer
What IN varchar
next_date IN date
interval IN varchar
此job參數是一個整數值
What參數是由此工作運行的一塊PL/SQL代碼塊
next_date參數指示何時此工作將被執行
interval參數指示一個工作重執行的頻度
PROCEDURE Interval (job IN binary_integer
Interval IN varchar
job參數標識一個特定的工作
PROCEDURE ISubmit (job IN binary_ineger
What IN varchar
next_date IN date
interval IN varchar
no_parse IN booean:=FALSE)
這個過程與Submit()過程的唯一區別在於此job參數作為IN型參數傳遞且包括一個由開發者提供的工作號
PROCEDURE Next_Date(job IN binary_ineger
next_date IN date)
job標識一個已存在的工作
PROCEDURE Remove(job IN binary_ineger);
job參數唯一地標識一個工作
PROCEDURE Run(job IN binary_ineger)
job參數標識將被立即執行的工作
這個過程有五個參數
PROCEDURE Submit ( job OUT binary_ineger
What IN varchar
next_date IN date
interval IN varchar
no_parse IN booean:=FALSE)
job參數是由Submit()過程返回的binary_ineger
what參數是將被執行的PL/SQL代碼塊
next_date參數指識何時將運行這個工作
interval參數何時這個工作將被重執行
no_parse參數指示此工作在提交時或執行時是否應進行語法分析——TRUE指示此PL/SQL代碼在它第一次執行時應進行語法分析
此程序有兩個參數
PROCEDURE User_Export(job IN binary_ineger
my_call IN OUT varchar
job參數標識一個安排了的工作
PROCEDURE What (job IN binary_ineger
What IN OUT varchar
job參數標識一個存在的工作
三
dba_jobs
all_jobs
user_jobs
dba_jobs_running 包含正在運行job相關信息
SQL>SELECT JOB
SQL>FROM DBA_JOBS;
JOB NEXT_DATE NEXT_SEC FAILURES B
正在運行的JOB相關信息
SELECT SID
FROM DBA_JOBS_RUNNING r
WHERE r
SID JOB LOG_USER THIS_DATE THIS_SEC
JOB QUEUE LOCK相關信息
SELECT SID
FROM V$LOCK
WHERE TYPE =
SID TY ID
四
一個簡單例子
創建測試表
SQL> create table TEST(a date);
表已創建
創建一個自定義過程
SQL> create or replace procedure MYPROC as
過程已創建
創建JOB
SQL> variable job
SQL>
SQL> begin
PL/SQL 過程已成功完成
運行JOB
SQL> begin
PL/SQL 過程已成功完成
SQL> select to_char(a
時間
刪除JOB
SQL> begin
PL/SQL 過程已成功完成
From:http://tw.wingwit.com/Article/program/Oracle/201311/17839.html