Laravel5.1中开启事务,不生效的问题
最近遇到个问题,把laravel升级到5.1.10的后,使用DB::beginTransaction();开启事务后,事务不生效,有哪位大神遇到过吗?
具体情况:
在这个代码中,当A操作执行完后,记录就直接生成在了对应的数据库表里,就算强制回滚也不生效。
但是执行到B操作的时候,如果没有执行事务提交操作,对应的数据库表中没有记录,而且如果回滚也是正常的。
同样的操作,在laravel5.1.8中,能够正常进行。
那位大神能够给予解答一二,谢谢!
具体情况:
DB::beginTransaction();
// A数据库插入操作
// 检查是否成功,失败就回滚
// B数据库插入操作
// 检查是否成功,失败就回滚
DB::commit();
在这个代码中,当A操作执行完后,记录就直接生成在了对应的数据库表里,就算强制回滚也不生效。
但是执行到B操作的时候,如果没有执行事务提交操作,对应的数据库表中没有记录,而且如果回滚也是正常的。
同样的操作,在laravel5.1.8中,能够正常进行。
那位大神能够给予解答一二,谢谢!
3 个回复
zfeig
赞同来自: mrjarone 、爬行的大爷
高举伟大的石头
赞同来自:
catch 呢
吃掉了?
mrjarone - dev
赞同来自: