在作业过程中引用作业编号 - oracle plsql
Posted
技术标签:
【中文标题】在作业过程中引用作业编号 - oracle plsql【英文标题】:Referencing jobnum within job procedure - oracle plsql 【发布时间】:2016-07-30 15:28:40 【问题描述】:我有一个从高级队列中出列的作业过程,一次一条消息。当队列为空时,应该引发异常,我想在异常部分删除该作业,但我不知道如何引用该特定的作业编号工作。我希望有人可以帮助我。
【问题讨论】:
【参考方案1】:可以查询SYS_CONTEXT( 'USERENV', 'BG_JOB_ID')
获取当前会话的job id
【讨论】:
【参考方案2】:谢谢你。 同时我发现我可以在创建工作时参考job_id。
"当作业定义在自己的参数列表中引用这些作业参数时,它们的值会在作业执行时分配给作业定义中的参数。例如,假设一个名为proc1的过程具有以下规范:
PROCEDURE proc1 (my_job_number INTEGER); 还假设我们提交 proc1 以由作业队列执行,如下所示:
声明 工作无整数; 开始 DBMS_JOB.SUBMIT(jobno,`proc1(my_job_number=>job);'); 结尾; / 当 proc1 被队列执行时,my_job_number 参数被分配了作业的作业号,因此 proc1 将“知道”它是什么作业号。”
这里是链接http://docstore.mik.ua/orelly/oracle/bipack/ch13_01.htm如果有人也将被nedded
再次感谢
【讨论】:
以上是关于在作业过程中引用作业编号 - oracle plsql的主要内容,如果未能解决你的问题,请参考以下文章