今天就跟大家聊聊有关php中PDO::beginTransaction的作用是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
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 TABLE
或 CREATE 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中PDO::beginTransaction的作用是什么有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。