AUTONOMOUS_TRANSACTION
Posted
技术标签:
【中文标题】AUTONOMOUS_TRANSACTION【英文标题】: 【发布时间】:2009-08-26 14:55:44 【问题描述】:我正在考虑使用 Pragma 在批处理中进行一些登录。有人对这个有经验么 ?如果是这样,任何利弊将不胜感激。
【问题讨论】:
【参考方案1】:IMO 自治事务特别适用于日志记录:它们独立于主会话运行,这意味着您可以在表中写入、提交或回滚更改而不会影响主事务。
它们还增加了很少的开销:如果您运行大型语句并在每个语句之间添加一个自治事务,则性能成本将可以忽略不计。
还有一个您可能会感兴趣的副作用:由于自治事务与调用事务处于独立会话中,因此您可以在主进程运行时跟踪它的进程。您不必等待主事务完成:您可以查询日志表,因为它已被自治事务填充。
【讨论】:
【参考方案2】:显然,即使主事务回滚,在自治事务中完成的任何日志记录都将保留在数据库中。对于日志记录,这可能是您想要的,但重要的是要记住“将行 X 插入表 Y”的日志记录并不意味着该插入实际上已提交。
【讨论】:
以上是关于AUTONOMOUS_TRANSACTION的主要内容,如果未能解决你的问题,请参考以下文章