【问题标题】:When should I use a SQLTransaction我什么时候应该使用 SQLTransaction
【发布时间】:2011-05-23 17:37:23
【问题描述】:

什么是使用 SQLTransaction 的合适时间?

我将它们用于所有我的 INSERT、UPDATE 和 DELETE 语句。

这是正确的用法还是我有点矫枉过正?

【问题讨论】:

    标签: .net data-access sqltransaction


    【解决方案1】:

    当您希望以原子方式处理一系列语句时使用事务 - 也就是说,它们要么全部成功并提交,要么全部回滚。

    由于简单语句已经是原子的,因此您无需围绕每个单独的语句显式创建事务。

    【讨论】:

    • 好吧,这更有意义,我一直认为我做的工作超出了必要的范围。甚至可能让其他程序员不高兴。
    【解决方案2】:

    仅当您计划执行多个语句时才需要一个事务,并且计划在某处发生错误时回滚由语句引起的所有数据更改。不需要包装单个更新/删除语句。如果单个命令发生错误,只需在前端代码中捕获并处理错误即可。

    【讨论】:

      【解决方案3】:

      如果您的命令只是单个发出的,而不是一组发出的,那么它可能是矫枉过正的。事务用于将 sql 命令分组在一起,一个必须让所有成员都成功的组,或者根本没有。

      http://en.wikipedia.org/wiki/Atomicity_%28database_systems%29

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-09-07
        • 2012-09-22
        • 1970-01-01
        • 2012-12-23
        • 2021-07-13
        • 1970-01-01
        • 2010-12-30
        相关资源
        最近更新 更多