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 相关文章推荐
模仿OSO的论坛(五)
Oct 09 PHP
PHP写MySQL数据 实现代码
Jun 15 PHP
无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装最快的解决办法
Aug 01 PHP
ThinkPHP的L方法使用简介
Jun 18 PHP
重新认识php array_merge函数
Aug 31 PHP
PHP获取mysql数据表的字段名称和详细信息的方法
Sep 27 PHP
浅析ThinkPHP缓存之快速缓存(F方法)和动态缓存(S方法)(日常整理)
Oct 26 PHP
浅谈Coreseek、Sphinx-for-chinaese、Sphinx+Scws的区别
Dec 15 PHP
PHP多进程编程实例详解
Jul 19 PHP
PHP删除数组中指定值的元素常用方法实例分析【4种方法】
Aug 21 PHP
php求斐波那契数的两种实现方式【递归与递推】
Sep 09 PHP
php实现JWT验证的实例教程
Nov 26 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
德生PL990的分析评价
2021/03/02 无线电
用session做客户验证时的注意事项
2006/10/09 PHP
几个学习PHP的网址
2006/11/25 PHP
隐藏X-Space个人空间下方版权方法隐藏X-Space个人空间标题隐藏X-Space个人空间管理版权方法
2007/02/22 PHP
php 中英文语言转换类
2011/09/07 PHP
PHP学习笔记之字符串编码的转换和判断
2014/05/22 PHP
yii2使用gridView实现下拉列表筛选数据
2017/04/10 PHP
php + nginx项目中的权限详解
2017/05/23 PHP
msn上的tab功能Firefox对childNodes处理的一个BUG
2008/01/21 Javascript
零基础学JavaScript最新动画教程+iso光盘下载
2008/01/22 Javascript
javascript 操作select下拉列表框的一点小经验
2010/03/20 Javascript
Asp.net下使用Jquery Ajax传送和接收DataTable的代码
2010/09/12 Javascript
JavaScript cookie的设置获取删除详解
2014/02/11 Javascript
DOM基础教程之使用DOM控制表格
2015/01/20 Javascript
js实现多选项切换导航菜单的方法
2015/02/06 Javascript
jQuery插件datalist实现很好看的input下拉列表
2015/07/14 Javascript
jQuery实现移动端Tab选项卡效果
2017/03/15 Javascript
vue.js中npm安装教程图解
2018/04/10 Javascript
详解webpack-dev-server使用方法
2018/09/14 Javascript
微信小程序性能优化之checkSession的使用
2019/03/06 Javascript
解决echarts图表使用v-show控制图表显示不全的问题
2020/07/19 Javascript
python利用hook技术破解https的实例代码
2013/03/25 Python
Python中Iterator迭代器的使用杂谈
2016/06/20 Python
Python内置函数delattr的具体用法
2017/11/23 Python
解决python3 pika之连接断开的问题
2018/12/18 Python
python+opencv实现高斯平滑滤波
2020/07/21 Python
scrapy-redis源码分析之发送POST请求详解
2019/05/15 Python
Python zip函数打包元素实例解析
2019/12/11 Python
python tqdm 实现滚动条不上下滚动代码(保持一行内滚动)
2020/02/19 Python
基于HTML5实现类似微信手机摇一摇功能(计算摇动次数)
2017/07/24 HTML / CSS
HTML5实现应用程序缓存(Application Cache)
2020/06/16 HTML / CSS
日本食品网上商店:JaponShop.com
2017/11/28 全球购物
运动会广播稿300字
2014/01/10 职场文书
2014年信息技术工作总结
2014/12/16 职场文书
2015年药房工作总结
2015/04/25 职场文书
金砖之国观后感
2015/06/11 职场文书