2016-09-27 3 views
3

Ich brauche Einzel oracle job(dbms_scheduler.create_job)Können wir nennen zwei Verfahren einen einzigen Job mit

ich folgenden Code haben die Verwendung von zwei Verfahren zu nennen:

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

Here I UP_TRYNR renne, ich möchte ein anderes Verfahren laufen zusammen mit UP_TRYNR und ich möchte diese Anthere Prozedur in UP_TRYNR Verfahren nicht nennen.

Was soll ich tun?

+0

Sie möchten PROC1 und dann PROC2 nacheinander ausführen? Oder beides gleichzeitig? –

+0

Beide PROC1 und PROC2 zur gleichen Zeit .. – SYMA

Antwort

4

JOB_ACTION ist eine anonyme PL/SQL-Block, so dass Sie etwas tun können:

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; 

By the way, sollten Sie wahrscheinlich repeat_interval zu Ihrem create_job hinzufügen.

+0

Ich versuchte Ihre erwähnte Antwort, aber es scheint, als würde es zuerst 'BEGIN UP_TRYNR' anrufen. Nachdem 'BEGIN UP_TRYNR' abgeschlossen ist, wird 'YOUR_SECOND_PROCEDURE' aufgerufen. Ich wollte sie zusammenrufen. – SYMA

+0

Überprüfen Sie diese: https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:4712493580500 –

Verwandte Themen