如何正确使用PHP中的PDO::beginTransaction
事务是SQL
中较为常见的使用操作,在日常操作中,我们经常需要对数据库进行增、删、改,对数据进行操作难免会出现问题,为避免这种较大的错误,PHP
提供beginTransaction
函数,本文就带大家一起来看一看。
首先,我们来看一看beginTransaction()
函数的语法:
beginTransaction ( )
-
关闭自动提交模式。自动提交模式被关闭的同时,通过
PDO
对象实例对数据库做出的更改直到调用PDO::commit()
结束事务才被提交。调用PDO::rollBack()
将回滚对数据库做出的更改并将数据库连接返回到自动提交模式。 -
返回值:成功时返回
true
, 或者在失败时返回false
。
代码实例:
1.数据库连接部分:
<?php $servername = "localhost"; $username = "root"; $password = "root123456"; $dbname = "my_database"; try { $pdo = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); echo "连接成功"."<br>"; $pdo->setAttribute(PDO::ATTR_CASE, PDO::CASE_UPPER); } catch(PDOException $e) { $pdo->rollBack(); echo $e->getMessage(); } ?>
2.开启事务:
$pdo->beginTransaction(); /* 在全有或全无的基础上插入多行记录(要么全部插入,要么全部不插入) */ $sql = "INSERT INTO fate (id, name, age)VALUES (10,'王五',27)"; $sth = $pdo->exec($sql); /* 提交更改 */ $pdo->commit(); /* 现在数据库连接返回到自动提交模式 */
推荐:《2021年PHP面试题大汇总(收藏)》《php视频教程》