在 SQL Server 2008 R2 中。是否可以对单个更新命令进行回滚?
我知道还有其他类似的问题,但我还没有看到 2008 R2 的具体问题,因此我可能会得到相同的答案,如果是这种情况,那么我们可以关闭此线程。
我做了一个简单的更新,没有任何事务命令:
UPDATE myTable SET col1=somevalue WHERE....
最佳答案
当然,您可以使用显式事务,例如
BEGIN TRAN
UPDATE ...
ROLLBACK
但我不认为你问的是这个?
如果您有选项SET IMPLICIT_TRANSACTIONS ON
,那么在您明确执行此操作之前,该命令将不会被提交或回滚,但这不是默认行为。
默认情况下,事务是自动提交的,因此当命令成功完成时,更新的结果将被提交。如果更新遇到错误 - 包括更新期间连接被终止,它将自动回滚。
关于sql-server - 如何回滚SQL更新命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5787179/