首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >dbms_job和编译指示自治事务之间的区别

dbms_job和编译指示自治事务之间的区别
EN

Stack Overflow用户
提问于 2018-12-11 13:50:59
回答 1查看 256关注 0票数 0

dbms_job和编译指示自治事务之间的区别是什么

EN

回答 1

Stack Overflow用户

发布于 2018-12-11 14:13:35

除了它们的拼写不同之外?它们就像苹果和香蕉一样。

DBMS_JOB package调度和管理作业队列中的作业。它用于在预定的时间运行某些过程。例如,每天02:00,08:00和16:00;或者,每周六12:00,等等。如果你使用的是Windows,它类似于它的任务管理器。或者,在Unix上,它被称为Cron。

它有一个叫DBMS_SCHEDULER的弟弟,他提供了更多的选择。不过,对于简单的工作,我仍然使用DBMS_JOB。更多信息请点击此处:https://docs.oracle.com/database/121/ARPLS/d_job.htm#ARPLS019

Pragma表示该语句是一个编译指示(编译器指令)。Pragma在编译时处理,而不是在运行时处理。它们将信息传递给编译器。

AUTONOMOUS_TRANSACTION杂注改变了子程序在事务中的工作方式。使用此编译指示标记的子程序可以执行SQL操作并提交或回滚这些操作,而无需提交或回滚主事务中的数据。

它通常用于记录过程中的某些信息,而不影响主过程(因为杂注允许记录过程将其插入提交到日志表中,而不影响主过程-它甚至可能失败(并隐式回滚),但您的日志信息将保持完好并可供查看)。

人们在解决变化表错误时误用了它;没错,这个编译指示“修复”了这个问题,但通常是一个错误的解决问题的方法。

有关自主交易的更多信息,请访问:https://docs.oracle.com/database/121/LNPLS/static.htm#LNPLS00609

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53718138

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档