【发布时间】:2011-05-23 17:37:23
【问题描述】:
什么是使用 SQLTransaction 的合适时间?
我将它们用于所有我的 INSERT、UPDATE 和 DELETE 语句。
这是正确的用法还是我有点矫枉过正?
【问题讨论】:
标签: .net data-access sqltransaction
什么是使用 SQLTransaction 的合适时间?
我将它们用于所有我的 INSERT、UPDATE 和 DELETE 语句。
这是正确的用法还是我有点矫枉过正?
【问题讨论】:
标签: .net data-access sqltransaction
当您希望以原子方式处理一系列语句时使用事务 - 也就是说,它们要么全部成功并提交,要么全部回滚。
由于简单语句已经是原子的,因此您无需围绕每个单独的语句显式创建事务。
【讨论】:
仅当您计划执行多个语句时才需要一个事务,并且计划在某处发生错误时回滚由语句引起的所有数据更改。不需要包装单个更新/删除语句。如果单个命令发生错误,只需在前端代码中捕获并处理错误即可。
【讨论】:
如果您的命令只是单个发出的,而不是一组发出的,那么它可能是矫枉过正的。事务用于将 sql 命令分组在一起,一个必须让所有成员都成功的组,或者根本没有。
http://en.wikipedia.org/wiki/Atomicity_%28database_systems%29
【讨论】: