laravel5 Eloquent 实现事务方式


Posted in PHP onOctober 21, 2019

1.官方手册是这样介绍的:

想要在一个数据库事务中运行一连串操作,可以使用DB门面的transaction方法,如果事务闭包中抛出异常,事务将会自动回滚。如果闭包执行成功,事务将会自动提交。使用transaction方法时不需要担心手动回滚或提交:

DB::transaction(function () {
  DB::table('users')->update(['votes' => 1]);
  DB::table('posts')->delete();
});

手动使用事务

如果你想要手动开始事务从而对回滚和提交有一个完整的控制,可以使用DB门面的beginTransaction方法:

DB::beginTransaction();

你可以通过rollBack方法回滚事务:

DB::rollBack();

最后,你可以通过commit方法提交事务:

DB::commit();

注意:使用DB门面的事务方法还可以用于控制查询构建器和 Eloquent ORM 的事务。

2.具体是这样使用的:

use Illuminate\Support\Facades\DB; 
//开启事务 
DB::beginTransaction();
try{ 
//中间逻辑代码 DB::commit(); 
}catch (\Exception $e) { 
//接收异常处理并回滚 DB::rollBack(); 
}

以上这篇laravel5 Eloquent 实现事务方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
我的论坛源代码(十)
Oct 09 PHP
PHP提取中文首字母
Apr 09 PHP
PHP SQLite类
May 07 PHP
php实现的支持imagemagick及gd库两种处理的缩略图生成类
Sep 23 PHP
两千行代码的PHP学习笔记汇总
Oct 05 PHP
php通过array_unshift函数添加多个变量到数组前端的方法
Mar 18 PHP
php中执行系统命令的方法
Mar 21 PHP
php实现的RSS生成类实例
Apr 23 PHP
php组合排序简单实现方法
Oct 15 PHP
关于PHP通用返回值设置方法
Mar 31 PHP
php静态成员方法和静态的成员属性的使用方法
Oct 26 PHP
PHP实现可添加水印与生成缩略图的图片处理工具类
Jan 16 PHP
基于Laravel 多个中间件的执行顺序详解
Oct 21 #PHP
laravel利用中间件做防非法登录和权限控制示例
Oct 21 #PHP
laravel 实现关闭CSRF(全部关闭、部分关闭)
Oct 21 #PHP
laravel csrf排除路由,禁止,关闭指定路由的例子
Oct 21 #PHP
laravel 实现上传图片到本地和前台访问示例
Oct 21 #PHP
浅谈laravel-admin form中的数据,在提交后,保存前,获取并进行编辑
Oct 21 #PHP
Laravel 之url参数,获取路由参数的例子
Oct 21 #PHP
You might like
通过对服务器端特性的配置加强php的安全
2006/10/09 PHP
yii2.0使用Plupload实现带缩放功能的多图上传
2015/12/22 PHP
Laravel 实现数据软删除功能
2019/08/21 PHP
php日志函数error_log用法实例分析
2019/09/23 PHP
php解决约瑟夫环算法实例分析
2019/09/30 PHP
js变量作用域及可访问性的探讨
2006/11/23 Javascript
js获取当前select 元素值的代码
2010/04/19 Javascript
基于jquery实现的省市区级联无ajax
2013/09/24 Javascript
JS实现仿FLASH效果的竖排导航代码
2015/09/15 Javascript
Jquery1.9.1源码分析系列(六)延时对象应用之jQuery.ready
2015/11/24 Javascript
jQuery弹出层后禁用底部滚动条(移动端关闭回到原位置)
2016/08/29 Javascript
Javascript基础回顾之(二) js作用域
2017/01/31 Javascript
Vue.js实战之组件的进阶
2017/04/04 Javascript
详解angularJs中关于ng-class的三种使用方式说明
2017/06/02 Javascript
关于Vue.nextTick()的正确使用方法浅析
2017/08/25 Javascript
Vue底层实现原理总结
2018/02/17 Javascript
通过vue刷新左侧菜单栏操作
2020/08/06 Javascript
[01:22:10]Ti4 循环赛第二日 DK vs Empire
2014/07/11 DOTA
[15:23]教你分分钟做大人:虚空假面
2014/10/30 DOTA
用Python的线程来解决生产者消费问题的示例
2015/04/02 Python
python format 格式化输出方法
2018/07/16 Python
手把手教你使用Python创建微信机器人
2019/04/29 Python
Python中os模块功能与用法详解
2020/02/26 Python
解决jupyter notebook显示不全出现框框或者乱码问题
2020/04/09 Python
Python web框架(django,flask)实现mysql数据库读写分离的示例
2020/11/18 Python
纯CSS3实现滚动的齿轮动画效果
2014/06/05 HTML / CSS
CSS3使用transition实现的鼠标悬停淡入淡出
2015/01/09 HTML / CSS
详解html2canvas截图不能截取圆角图片的解决方案
2018/01/30 HTML / CSS
static函数与普通函数有什么区别
2015/12/25 面试题
早餐连锁店计划书
2014/01/08 职场文书
教育学习自我评价
2014/02/03 职场文书
2014年大学生职业规划书:未来不是梦,只要勇敢冲!
2014/09/22 职场文书
2015年房产经纪人工作总结
2015/05/15 职场文书
有关三国演义的读书笔记
2015/06/25 职场文书
react如何快速设置文件路径别名
2021/04/28 Javascript
Python办公自动化之教你用Python批量识别发票并录入到Excel表格中
2021/06/26 Python