我一直在阅读SqlTransactions,并发现了很多例子: http://www.devhood.com/tutorials/tutorial_details.aspx?tutorial_id=451
问题是,当我执行BeginTransaction()(执行所有命令)然后在最后执行Commit()时,我执行的所有命令都会运行,并且会跳过带有语法错误或其他错误的命令。这是我也想要回滚的地方,而不是跳过它们。我发现了一些关于这个主题的文章,但它们并没有很大帮助,纯粹是在SQL中。
有没有办法找出其中一个ExecuteNonQuery()在提交之前是否失败而不是只是跳过?感谢。
答案 0 :(得分:0)
如果你正在做的事情,你不会在抛出异常时执行提交,并且事务将回滚。
你引用的例子说明了这一点。见第36行。