【问题标题】:Laravel DatabaseTransactions trait and autocommit=1Laravel DatabaseTransactions 特征和自动提交=1
【发布时间】:2017-10-11 22:50:02
【问题描述】:

目前为了在我的测试中使用DatabaseTransactions,我必须在MySQL设置中关闭autocommit。但是,它使$model->save() 停止工作(没有数据保存到数据库中)。我在这里做错了什么?

【问题讨论】:

    标签: database laravel-5 laravel-eloquent


    【解决方案1】:

    嗯,你基本上告诉数据库不要插入任何东西,直到你提交事务。所以你的模型保存得很好。但是数据库没有在数据文件中写入插入/更新。它正在等待你通过发出 COMMIT 语句来告诉它何时执行。

    要修复它,您不应关闭自动提交,而应正确使用事务。

    有关如何在 Laravel 中正确使用数据库事务,请参阅我的文章: http://lesichkov.co.uk/article/20150927110905758776/laravel-5-database-transactions

    【讨论】:

      猜你喜欢
      • 2017-09-18
      • 1970-01-01
      • 2014-02-27
      • 1970-01-01
      • 2016-09-27
      • 2015-12-20
      • 2017-05-07
      • 2011-06-28
      • 2014-10-19
      相关资源
      最近更新 更多