use*_*447 1 c# t-sql sql-server
假设我有一个C#类,该类为数据库创建事务,然后调用存储过程。int = 1如果存在错误,则存储过程返回。假设我们更新一个表,然后返回1,因为SP中某处发生了错误。
然后,这将在c#中引发异常,该异常调用了一种方法来回滚事务-但是在方法的FINALLY块中,我们提交了事务。
由于事务已回滚,当我们调用commit时会发生什么?
如果回滚该事务,则在该事务中进行的所有更改都只是...回滚,取消。因此,至少在没有其他事务等待时,您对finally块的提交将不会执行任何操作。
我不会在commit块中放置commit方法,而是在try块的末尾提交事务,并在catch块中回滚。
| 归档时间: |
|
| 查看次数: |
122 次 |
| 最近记录: |