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数组总结篇(一)
Sep 30 PHP
PHP5.3的垃圾回收机制(动态存储分配方案)深入理解
Dec 10 PHP
解决FastCGI 进程超过了配置的活动超时时限的问题
Jul 03 PHP
php实现图片添加水印功能
Feb 13 PHP
php计算几分钟前、几小时前、几天前的几个函数、类分享
Apr 09 PHP
ThinkPHP连接数据库及主从数据库的设置教程
Aug 22 PHP
php获取url参数方法总结
Nov 13 PHP
小程序微信退款功能实现方法详解【基于thinkPHP】
May 05 PHP
Laravel 修改默认日志文件名称和位置的例子
Oct 17 PHP
PHP 范围解析操作符(::)用法分析【访问静态成员和类常量】
Apr 14 PHP
PHP常量及变量区别原理详解
Aug 14 PHP
PHP dirname简单使用代码实例
Nov 13 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 正则 过滤html 的超链接
2009/06/02 PHP
CI框架中libraries,helpers,hooks文件夹详细说明
2014/06/10 PHP
JavaScript创建命名空间的5种写法
2014/06/24 PHP
PHP Curl模拟登录微信公众平台、新浪微博实例代码
2016/01/28 PHP
thinkPHP5 tablib标签库自定义方法详解
2017/05/10 PHP
利用PHP实现开心消消乐的算法示例
2017/10/12 PHP
Javascript操作cookie的函数代码
2012/10/03 Javascript
Javascript快速排序算法详解
2014/12/03 Javascript
JS使用eval解析JSON的注意事项分析
2015/11/14 Javascript
Javascript中的Prototype到底是什么
2016/02/16 Javascript
返回函数的JavaScript函数
2016/06/14 Javascript
下一代Bootstrap的5个特点 超酷炫!
2016/06/17 Javascript
详解Vue + Vuex 如何使用 vm.$nextTick
2017/11/20 Javascript
jQuery EasyUI 折叠面板accordion的使用实例(分享)
2017/12/25 jQuery
nodejs 使用http进行post或get请求的实例(携带cookie)
2019/01/03 NodeJs
vue+layui实现select动态加载后台数据的例子
2019/09/20 Javascript
在VUE style中使用data中的变量的方法
2020/06/19 Javascript
微信小程序连接服务器展示MQTT数据信息的实现
2020/07/14 Javascript
vue实现在进行增删改操作后刷新页面
2020/08/05 Javascript
[01:51]开启你的城市传奇 完美世界城市挑战赛开始报名
2018/10/09 DOTA
在Python的struct模块中进行数据格式转换的方法
2015/06/17 Python
详解Python中表达式i += x与i = i + x是否等价
2017/02/08 Python
Python爬虫爬取一个网页上的图片地址实例代码
2018/01/16 Python
Python基于OpenCV实现人脸检测并保存
2019/07/23 Python
pycharm修改文件的默认打开方式的步骤
2019/07/29 Python
Pytorch数据拼接与拆分操作实现图解
2020/04/30 Python
浅谈Selenium+Webdriver 常用的元素定位方式
2021/01/13 Python
Perfume’s Club法国站:购买香水和化妆品
2019/05/02 全球购物
德国购买踏板车网站:Microscooter
2019/10/14 全球购物
研究生导师评语
2014/12/31 职场文书
假如给我三天光明读书笔记
2015/06/26 职场文书
《失物招领》教学反思
2016/02/20 职场文书
MySQL中IF()、IFNULL()、NULLIF()、ISNULL()函数的使用详解
2021/06/26 MySQL
【TED出品】天梯非主流开心游1700 划水骑士
2022/03/31 魔兽争霸
Mysql排查分析慢sql之explain实战案例
2022/04/19 MySQL
V Rising 服务器搭建图文教程
2022/06/16 Servers