2013-10-31 119 views
1

我是DMBS_SCHEDULER中的新手,我遇到了一些問題。
我想運行.exe
所以我創建了一個作業:從DBMS_SCHEDULER運行exe

begin 
    sys.dbms_scheduler.create_job(job_name   => 'FTREC.EXE_1', 
          job_type   => 'EXECUTABLE', 
          job_action   => 'C:\Windows\System32\calc.exe', 
          start_date   => to_date(null), 
          repeat_interval  => '', 
          end_date   => to_date(null), 
          job_class   => 'IRECS_JOB_CLASS', 
          enabled    => false, 
          auto_drop   => false, 
          comments   => ''); 
end; 

我也創建憑據:

DBMS_SCHEDULER.CREATE_CREDENTIAL('WWLSERVER','WWLSERVER','1234',null,null,null); 

而且我申請的憑證,以我的工作

dbms_scheduler.set_attribute('FTREC.EXE_1', 'credential_name', 'WWLSERVER'); 

但是當我嘗試運行我的作業時,出現此錯誤:

EXTERNAL_LOG_ID="job_255737_183883", 
ORA-27369: job of type EXECUTABLE failed with exit code: The extended attributes are inconsistent. 

我做錯了什麼?

回答

0

憑證在10g中不可用。在 DBMS_SCHEDULER documentation中沒有提及「憑證」一詞。

我能夠在12c中運行你的代碼。但運行calc.exe創建了一個無法啓動的會話,我不得不重新啓動數據庫。當我使用一個簡單的.bat文件進行測試時,情況變得更好了。

This thread關於Oracle論壇有關於在10g上運行外部程序的方法。