【问题标题】:SQL 'COMMIT TRAN' not committingSQL 'COMMIT TRAN' 未提交
【发布时间】:2016-02-14 23:28:21
【问题描述】:

我正在完成 SQL 的基本更新。

我首先执行“BEGIN TRAN”,

然后执行我的更新以将特定列中的所有行从“0”更改为“1”

对更新感到满意后,我正在执行“COMMIT TRAN”。

现在,它说它已成功提交。然后我去关闭窗口,我得到一个弹出窗口,告诉我我有未提交的交易打开。或者,有人告诉我我从未关闭过交易。

这只是最近才开始发生,并且已经发生过几次,对我和其他使用同一数据库的人来说。我们确定我们正在执行“COMMIT TRAN”。

有人知道这是什么吗?

【问题讨论】:

  • 检查你的开发环境。您可能已将其设置为自行启动事务,而该事务未提交。
  • 那么像 tranception 一样,事务中的事务?
  • 是的,完全一样
  • 感谢 Juan 非常感谢您的帮助,我现在会调查一下
  • 您使用的是哪个开发环境?我记得 TOAD 有这个设置,但有一段时间没有使用它

标签: sql commit


【解决方案1】:

我在使用 MS SSMS 时也有类似的行为。有时代码在打开的事务中失败或中止。然后回滚整个事务。因此,您下次不会提交任何事务。同时你可能会忘记提交,你会得到嵌套的未提交事务。

您可以在设置中启用显式事务。它应该会简化您的体验。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-16
    • 1970-01-01
    • 1970-01-01
    • 2015-01-30
    • 1970-01-01
    • 2018-10-31
    • 2015-05-14
    相关资源
    最近更新 更多