博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ThinkPHP5事务回滚
阅读量:6320 次
发布时间:2019-06-22

本文共 495 字,大约阅读时间需要 1 分钟。

使用事务处理的话,需要数据库引擎支持事务处理。比如 MySQL 的 MyISAM 不支持事务处理,需要使用 InnoDB 引擎。

使用 transaction 方法操作数据库事务,当发生异常会自动回滚

1.手动控制事务

// 启动事务Db::startTrans();try{    $res = Db::table('user')->find(1);    $rs = Db::table('user')->delete(1);         if($res&&$rs){              // 提交事务      Db::commit();        }} catch (\Exception $e) {    // 回滚事务    Db::rollback();}

2.自动控制事务

Db::transaction(function(){   Db::table('user')->find(1);   Db::table('user')->delete(1);});

 

转载于:https://www.cnblogs.com/zxf100/p/8716158.html

你可能感兴趣的文章
新书问答:Agile Management
查看>>
react入门
查看>>
VUE高仿饿了么app
查看>>
针对Kubernetes软件栈有状态服务设计的思考
查看>>
第八章 进程间通信
查看>>
POJ 2312Battle City(BFS-priority_queue 或者是建图spfa)
查看>>
CentOS 7 巨大变动之 firewalld 取代 iptables
查看>>
教你如何使用Flutter和原生App混合开发
查看>>
Spring Boot 整合redis
查看>>
CSS hover改变背景图片过渡动画生硬
查看>>
订单的子单表格设置颜色
查看>>
Office365 Exchange Hybrid 番外篇 ADFS后端SQL群集(一)
查看>>
lvs fullnat部署手册(三)rs内核加载toa篇
查看>>
SSL/TLS原理详解
查看>>
buildroot下查找外部编译器通过ext-toolchain-wrapper调用的参数
查看>>
iframe 在ie下面总是弹出新窗口解决方法
查看>>
android编译系统makefile(Android.mk)写法
查看>>
MD5源代码C++
查看>>
Eclipse 添加 Ibator
查看>>
Linux中变量$#,$@,$0,$1,$2,$*,$$,$?的含义
查看>>