首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如果发生错误,using语句是否会回滚数据库事务?

如果发生错误,using语句是否会回滚数据库事务?
EN

Stack Overflow用户
提问于 2009-03-13 06:32:41
回答 3查看 33.4K关注 0票数 85

我在using语句中有一个IDbTransaction,但我不确定如果在using语句中抛出异常,它是否会回滚。我知道using语句会强制调用Dispose()...but。有人知道Rollback()也是这样吗?

更新:还有,我是否需要像下面那样显式调用Commit(),或者这也将由using语句来处理?

我的代码看起来有点像这样:

代码语言:javascript
运行
复制
using Microsoft.Practices.EnterpriseLibrary.Data;

...

using(IDbConnection connection = DatabaseInstance.CreateConnection())
{
    connection.Open();

    using(IDbTransaction transaction = connection.BeginTransaction())
    {
       //Attempt to do stuff in the database
       //potentially throw an exception
       transaction.Commit();
    }
}
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/641660

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档