如何使用Oracle的DBMS调度程序跟踪正在运行的作业的状态?

时间:2011-06-06 20:57:05

标签: oracle dbms-scheduler

这是否可以使用oracle的调度程序。我只是想跟踪当前正在执行的位置,作业运行的时间并获得反馈。

dbms_scheduler.create_job(
    job_name => 'hello_oracle_scheduler',
    job_type => 'PLSQL_BLOCK',
    job_action => 'BEGIN DBMS_OUTPUT.PUT_LINE('' ''); DBMS_OUTPUT.PUT_LINE(''Hello world of scheduler. Time to execute scheduled jobs!!!''); END;',
    number_of_arguments => 0

2 个答案:

答案 0 :(得分:7)

您最好使用表格并在其上插入/更新以跟踪您的JOB。在有控制台的奇怪情况下,DBMS_OUTPUT包是有意义的。

答案 1 :(得分:3)

我建议通过带有pragma autonomous_transaction选项的proc使用Pablo / Shannon的表插入方法。但是,另一种选择是使用UTL_MAIL(如果是9i或更低,则使用UTL_SMTP)向您自己发送电子邮件,如果这只是一个快速而肮脏的需求。