PDO::beginTransaction讲解


Posted in PHP onJanuary 27, 2019

PDO::beginTransaction

PDO::beginTransaction 启动一个事务(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)

说明

语法

bool PDO::beginTransaction ( void )

关闭自动提交模式。自动提交模式被关闭的同时,通过 PDO 对象实例对数据库做出的更改直到调用PDO::commit()结束事务才被提交。

调用PDO::rollBack()将回滚对数据库做出的更改并将数据库连接返回到自动提交模式。

包括 MySQL 在内的一些数据库,当发出一条类似 DROP TABLECREATE TABLE 这样的 DDL 语句时,会自动进行一个隐式地事务提交。

隐式地提交将阻止你在此事务范围内回滚任何其他更改。

返回值

成功时返回TRUE, 或者在失败时返回FALSE

实例

回滚一个事务

下面例子在回滚此更改前开始一个事务并发出两条修改数据库的语句。

但在 MySQL 中,DROP TABLE 语句自动提交事务,使得在此事务中的任何更改都不会被回滚。

<?php
/* 开始一个事务,关闭自动提交 */
$dbh->beginTransaction();
/* 更改数据库架构及数据 */
$sth = $dbh->exec("DROP TABLE fruit");
$sth = $dbh->exec("UPDATE dessert
  SET name = 'hamburger'");
/* 识别出错误并回滚更改 */
$dbh->rollBack();
/* 数据库连接现在返回到自动提交模式 */
?>

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

PHP 相关文章推荐
php批量删除数据
Jan 18 PHP
php不用正则采集速度探究总结
Mar 24 PHP
snoopy 强大的PHP采集类使用实例代码
Dec 09 PHP
php中邮箱地址正则表达式实现与详解
Apr 24 PHP
php与Mysql的一些简单的操作
Feb 26 PHP
codeigniter中view通过循环显示数组数据的方法
Mar 20 PHP
Laravel 5框架学习之数据库迁移(Migrations)
Apr 08 PHP
正确的PHP匹配UTF-8中文的正则表达式
May 13 PHP
在Mac上编译安装PHP7的开发环境
Jul 28 PHP
yii gridview实现时间段筛选功能
Aug 15 PHP
源码分析 Laravel 重复执行同一个队列任务的原因
Dec 25 PHP
Yii框架自定义数据库操作组件示例
Nov 11 PHP
PHP的PDO大对象(LOBs)
Jan 27 #PHP
实例讲解PHP中使用命名空间
Jan 27 #PHP
PHP的PDO错误与错误处理
Jan 27 #PHP
实例分析PHP将字符串转换成数字的方法
Jan 27 #PHP
PHP的PDO预处理语句与存储过程
Jan 27 #PHP
PHP中数组转换为SimpleXML教程
Jan 27 #PHP
实例讲解php实现多线程
Jan 27 #PHP
You might like
Sorting Array Values in PHP(数组排序)
2011/09/15 PHP
PHP 反射(Reflection)使用实例
2015/05/12 PHP
PHP使用Nginx实现反向代理
2017/09/20 PHP
PHP 中魔术常量的实例详解
2017/10/26 PHP
PHP+redis实现的悲观锁机制示例
2018/06/12 PHP
PHP自定义递归函数实现数组转JSON功能【支持GBK编码】
2018/07/17 PHP
js对象数组按属性快速排序
2011/01/31 Javascript
JavaScript利用构造函数和原型的方式模拟C#类的功能
2014/03/06 Javascript
node爬取微博的数据的简单封装库nodeweibo使用指南
2015/01/02 Javascript
JavaScript给input的value赋值引发的关于基本类型值和引用类型值问题
2015/12/07 Javascript
AngularJS中的指令全面解析(必看)
2016/05/20 Javascript
vue-cli 组件的导入与使用教程详解
2018/04/11 Javascript
详解Vue单元测试case写法
2018/05/24 Javascript
微信小程序webview组件交互,内联h5页面并网页实现微信支付实现解析
2019/08/16 Javascript
Javascript查看大图功能代码实现
2020/05/07 Javascript
关于vue3默认把所有onSomething当作v-on事件绑定的思考
2020/05/15 Javascript
[02:49]2018DOTA2亚洲邀请赛主赛事决赛日战况回顾 Mineski鏖战5局夺得辉耀
2018/04/10 DOTA
[01:02:54]完美世界DOTA2联赛PWL S2 FTD vs GXR 第一场 11.22
2020/11/26 DOTA
修改Python的pyxmpp2中的主循环使其提高性能
2015/04/24 Python
Python随机生成带特殊字符的密码
2016/03/02 Python
python编写简单爬虫资料汇总
2016/03/22 Python
Python的mysql数据库的更新如何实现
2017/07/31 Python
Python实现的科学计算器功能示例
2017/08/04 Python
python版微信跳一跳游戏辅助
2018/01/11 Python
Python实现的建造者模式示例
2018/08/06 Python
Python3显示当前时间、计算时间差及时间加减法示例代码
2019/09/07 Python
导致python中import错误的原因是什么
2020/07/01 Python
基于opencv实现简单画板功能
2020/08/02 Python
爱普生美国官网:Epson美国
2018/11/05 全球购物
Android笔试题总结
2014/11/29 面试题
大学毕业生通用求职信
2013/09/28 职场文书
信息管理专业推荐信
2013/10/29 职场文书
大学毕业感言
2014/01/10 职场文书
教师远程培训心得体会
2016/01/09 职场文书
Java循环队列与非循环队列的区别总结
2021/06/22 Java/Android
浅谈Python数学建模之线性规划
2021/06/23 Python