【问题标题】:Oracle12: calling a procedure inside a PackageOracle12:调用包内的过程
【发布时间】:2018-02-13 10:05:32
【问题描述】:

我有一个 DBMS_JOB 作业声明如下

BEGIN
DBMS_SCHEDULER.CREATE_JOB (
job_name => 'GET_ENAGAS_INVOICES_JOB',
job_type => 'PLSQL_BLOCK',
job_action => 'BEGIN LOPES.GET_ENAGAS_INVOICES; END;',
repeat_interval =>'FREQ=MINUTELY; INTERVAL=5; BYHOUR=9,22; BYDAY=TUE,WED,THU,FRI,SAT,SUN', 
enabled => TRUE,
comments => 'GET_ENAGAS_INVOICES');
END;
/

我将这个过程移到了一个包中,我想知道是否仍然可以运行该作业

【问题讨论】:

    标签: oracle oracle12c dbms-job


    【解决方案1】:

    是的,只需使用SCHEMA_NAME.PACKAGE_NAME.PROCEDURE_NAME

    BEGIN
      DBMS_SCHEDULER.CREATE_JOB (
        job_name => 'GET_ENAGAS_INVOICES_JOB',
        job_type => 'PLSQL_BLOCK',
        job_action => 'BEGIN LOPES.PACKAGE_NAME.GET_ENAGAS_INVOICES; END;',
        repeat_interval =>'FREQ=MINUTELY; INTERVAL=5; BYHOUR=9,22; BYDAY=TUE,WED,THU,FRI,SAT,SUN', 
        enabled => TRUE,
        comments => 'GET_ENAGAS_INVOICES'
      );
    END;
    /
    

    【讨论】:

      猜你喜欢
      • 2012-10-13
      • 2022-12-05
      • 1970-01-01
      • 2020-08-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-16
      • 2013-02-23
      相关资源
      最近更新 更多