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 相关文章推荐
php email邮箱正则
Oct 08 PHP
php whois查询API制作方法
Jun 23 PHP
探讨Hessian在PHP中的使用分析
Jun 13 PHP
深入Memcache的Session数据的多服务器共享详解
Jun 13 PHP
PHP中实现生成静态文件的方法缓解服务器压力
Jan 07 PHP
php官方微信接口大全(微信支付、微信红包、微信摇一摇、微信小店)
Dec 21 PHP
在WordPress中实现发送http请求的相关函数解析
Dec 29 PHP
php生出随机字符串
Jul 06 PHP
php array 转json及java 转换 json数据格式操作示例
Nov 13 PHP
PHP超级全局变量【$GLOBALS,$_SERVER,$_REQUEST等】用法实例分析
Dec 11 PHP
PHP使用POP3读取邮箱接收邮件的示例代码
Jul 08 PHP
Laravel中GraphQL接口请求频率实战记录
Sep 01 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
IIS6的PHP最佳配置方法
2007/03/19 PHP
php产生随机数的两种方法实例代码 输出随机IP
2011/04/08 PHP
php使用filter过滤器验证邮箱 ipv6地址 url验证
2013/12/25 PHP
windows下apache搭建php开发环境
2015/08/27 PHP
php生成高清缩略图实例详解
2015/12/07 PHP
jQuery 页面载入进度条实现代码
2009/02/08 Javascript
表单元素与非表单元素刷新区别详细解析
2013/11/06 Javascript
JS事件在IE与FF中的区别详细解析
2013/11/20 Javascript
jQuery form插件之formDdata参数校验表单及验证后提交
2016/01/23 Javascript
Js 获取当前函数参数对象的实现代码
2016/06/20 Javascript
简单实现jQuery多选框功能
2017/01/09 Javascript
微信小程序网络请求的封装与填坑之路
2017/04/01 Javascript
vue实现todolist单页面应用
2017/04/11 Javascript
jquery学习笔记之无new构建详解
2017/12/07 jQuery
使用JS模拟锚点跳转的实例
2018/02/01 Javascript
vue实现引入本地json的方法分析
2018/07/12 Javascript
vue实现搜索功能
2019/05/28 Javascript
[01:44]《为梦想出发》—联想杯DOTA2完美世界全国高校联赛
2015/09/30 DOTA
[48:52]DOTA2上海特级锦标赛A组小组赛#2 Secret VS CDEC第一局
2016/02/25 DOTA
[37:47]IG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
[51:29]Alliance vs TNC 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
[01:32:50]DOTA2-DPC中国联赛 正赛 DLG vs XG BO3 第一场 1月25日
2021/03/11 DOTA
python 基础学习第二弹 类属性和实例属性
2012/08/27 Python
python学习笔记之调用eval函数出现invalid syntax错误问题
2015/10/18 Python
python中的计时器timeit的使用方法
2017/10/20 Python
Tornado 多进程实现分析详解
2018/01/12 Python
利用Python实现Excel的文件间的数据匹配功能
2020/06/16 Python
Django3中的自定义用户模型实例详解
2020/08/23 Python
Python使用pickle进行序列化和反序列化的示例代码
2020/09/22 Python
Nili Lotan官网:Nili Lotan同名品牌
2018/01/07 全球购物
美国在线购买空气净化器、除湿器、加湿器网站:AllergyBuyersClub
2021/03/16 全球购物
2014年党课学习心得体会
2014/07/08 职场文书
2014年党的群众路线整改措施思想汇报
2014/10/12 职场文书
外贸英文求职信范文
2015/03/19 职场文书
2015年人事科工作总结
2015/04/28 职场文书
MySQL 使用索引扫描进行排序
2021/06/20 MySQL