2016-09-27 54 views
3

我需要使用單oracle job(dbms_scheduler.create_job)我們可以調用使用一個單一的作業

我有以下的代碼來調用兩個程序兩種程序:

BEGIN 
    dbms_scheduler.create_job ( 
    job_name => 'test_JOB', 
    job_type => 'PLSQL_BLOCK', 
    JOB_ACTION => 'UP_TRYNR;', 
    start_date =>sysdate, 
    enabled => true, 
); 
END; 

這裏我跑UP_TRYNR,我想運行其他程序以及UP_TRYNR,我不想在UP_TRYNR程序中調用該另一個程序。

我該怎麼辦?

+0

你想依次執行PROC1和PROC2?或者兩者同時? –

+0

同時PROC1和PROC2 .. – SYMA

回答

4

JOB_ACTION是一個匿名的PL/SQL塊,所以你可以做這樣的事情:

BEGIN 
    dbms_scheduler.create_job ( 
    job_name => 'test_JOB', 
    job_type => 'PLSQL_BLOCK', 
    JOB_ACTION => 'BEGIN UP_TRYNR; YOUR_SECOND_PROCEDURE; END;', 
    start_date =>sysdate, 
    enabled => true, 
    ); 
END; 

順便說一句,你也許應該補充repeat_intervalcreate_job

+0

我試過你提到的答案,但似乎它會首先調用'BEGIN UP_TRYNR'。 'BEGIN UP_TRYNR'完成後,它會調用'YOUR_SECOND_PROCEDURE'。我想一起打電話給他們。 – SYMA

+0

看看這個:https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:4712493580500 –

相關問題