在作业过程中引用jobnum - oracle plsql

时间:2016-07-30 15:28:40

标签: database oracle plsql jobs

我有从高级队列中出队的作业程序,一次一条消息。当队列为空时,应该引发异常并且我想在异常部分删除该作业,但我不知道如何引用该特定的作业我希望有人可以帮助我。

2 个答案:

答案 0 :(得分:0)

您可以查询SYS_CONTEXT( 'USERENV', 'BG_JOB_ID')以获取当前会话的作业ID

答案 1 :(得分:0)

Thx man。 与此同时,我发现我可以参考job_id来创造这份工作。

"当作业定义在其自己的参数列表中引用这些作业参数时,它们的值将在作业执行时分配给作业定义中的参数。例如,假设一个名为proc1的过程具有以下规范:

PROCEDURE proc1(my_job_number IN INTEGER); 假设我们提交proc1以由作业队列执行,如下所示:

DECLARE    jobno INTEGER; 开始    DBMS_JOB.SUBMIT(jobno,`PROC1(my_job_number =>作业);&#39); 结束; / 当proc1由队列执行时,my_job_number参数被分配了作业的作业号,因此proc1将"知道"它的工号是什么。"

以下是链接http://docstore.mik.ua/orelly/oracle/bipack/ch13_01.htm,如果有人也将是

再次感谢