關於oracle job定時執行的問題?
問?:
我在乙個oracle伺服器上執行乙個job定時執行程式。
建立test表:create table test(a date);
建立myproc儲存過程:
create or replace procedure myproc as
begin
insert into test values(sysdate);
end;
提交job:
variable job1 number;
begin
dbms_job.submit(:job1,'myproc;',sysdate,'sysdate+1/1440');
end;
執行job:
begin
dbms_job.run(:job1);
end;
問題:一切都能建好,但它就是不更新。在另外的乙個oracle伺服器上可以執行,是不是跟伺服器的使用者有關啊,請高手賜教。。
答!:
1:確保資料庫init.ora檔案中有以下內容:
job_queue_processes=10(或大於10)
job_queue_interval=60 (或小於60, 僅用於oracle 8.1.x版本)
答!:
2:怎麼你的語句裡都沒有看見commit?
答!:
3:加了commit也不行啊!!!
job_queue_processes也設定了,我想是不是資料庫的使用者名稱有關係啊.
答!:
4:job_queue_processes設定為5了.
同樣的job,在另外的資料庫執行都正常,是什麼原因哦??
答!:
5:job_queue_processes設定為5以後要重起資料庫
然後你的操作要重新執行一遍。
答!:
6:你先檢視一下作業是否正在執行,
dba_jobs_running 檢視,
all_jobs是當前使用者可以訪問的所有作業檢視。
如果沒有執行,可適當增加job_queue_processes的值,增加併發執行的job數量,最大值1000。
例;
alter system set job_queue_processes = 20;
再
強制執行dbms_job.run(job號);
答!:
7:job_queue_processes設定之後,需要重啟嗎?資料庫在服務上,我不能重啟的.
用select * from dba_jobs_running查詢,內容為空.
答!:
8:begin
sys.dbms_job.submit(job => :job,
what => 'muser.pmaterialcollect
(1,''c'',''m'');',
next_date => to_date('16-08-2006 00:30:00', 'dd-mm-yyyy hh24:mi:ss'),
interval => 'trunc(sysdate)+1+30/1440');
commit;
end;
/
oracle job 定時任務,定時執行
declare jobno number begin sys.dbms job.submit jobno,dayreport sysdate,trunc sysdate,mi 1 24 60 commit end 注 dayreport 為儲存過程名字 select from sys.user jo...
oracle job 定時執行 儲存過程
一 簡單測試job的建立過程案例 1,先建立一張job test表,欄位為a 日期格式 sql create table job test a date table created sql commit commit complete 2,建立乙個儲存過程 bb 作用是往pig表中插入資料 sql ...
oracle job 定時執行 儲存過程
一 簡單測試job的建立過程案例 1,先建立一張job test表,欄位為a 日期格式 sql create table job test a date table created sql commit commit complete 2,建立乙個儲存過程 bb 作用是往pig表中插入資料 sql ...