事务

重要的事情说三遍:

事务只能在同一个SqlSugarClient对象有效,事务只能在同一个SqlSugarClient对象有效,事务只能在同一个SqlSugarClient对象有效,跨SqlSugarClient对象请用分布式事务

MySql特殊的库或表不支持事务,所以如果是用MYSQL的朋友需要注意了

正确用法:

用法1: 无数据返回只返回状态

事务 - 图1

用法2:返回数据并且返回状态

事务 - 图2

用法3: 使用try catch来处理事务,用这种方式事务一定要加try catch回滚不然会锁表,在操作就卡死

事务 - 图3

错误用法,创建了3个db对象

{9LGEVS(WE_8_6WJG4NO]3L.png

正确写法

事务 - 图5

跨类事务方案

http://www.codeisbug.com/Doc/8/1158

4.7 异步事务的支持

因为Async方法在事务中无效所以对于多个SqlSugar方法进行事务操作并且能够实现异步增加了该功能

事务 - 图6

和EF一样的事务用法

http://www.codeisbug.com/Doc/8/1174