SqlSugar-事务操作

一、事务操作实例

特别说明:

1.特别说明:在事务中,默认情况下是使用锁的,也就是说在当前事务没有结束前,其他的任何查询都需要等待

2.ReadCommitted:在正在读取数据时保持共享锁,以避免脏读,但是在事务结束之前可以更改数据,从而导致不可重复的读取或幻像数据。

//事务处理
using (SqlSugarClient db = SugarContext.GetInstance()) //开启数据连接
{
    db.CommandTimeOut = 30000;//设置超时时间
    try
    {
        //db.BeginTran();//开启事务
        //特别说明:在事务中,默认情况下是使用锁的,也就是说在当前事务没有结束前,其他的任何查询都需要等待
        //ReadCommitted:在正在读取数据时保持共享锁,以避免脏读,但是在事务结束之前可以更改数据,从而导致不可重复的读取或幻像数据。
        db.BeginTran(System.Data.IsolationLevel.ReadCommitted); //重载指定事务的级别

        //特别说明:在事务操作中,对于自增长列的表,插入成功,又回滚的会占据一次自增长值
        var id1 = db.Insert<UserInfo>(new UserInfo() { Name = "黎明" });
        Console.WriteLine(id1);
        throw new Exception("事务执行异常");
        var id2 = db.Insert<UserInfo>(new UserInfo() { Name = "网名" });
        Console.WriteLine(id2);

        //提交事务
        db.CommitTran();
    }
    catch (Exception ex)
    {
        db.RollbackTran();//回滚
        //throw ex;
    }
}

 

更多参考:

SqlSugar常用增删改操作

SqlSugar常用查询实例-拉姆达表达式

SqlSugar框架T4模板的使用

.Net开源SqlServer ORM框架SqlSugar整理

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值