mysqli::rollback
(mysqli_rollback)回滚当前事务
rollback()
/ mysqli_rollback()
函数回滚指定数据库连接的当前事务。
提示:还可以查看 commit()
函数,它提交当前事务;以及 autocommit()
函数,它开启或关闭自动提交数据库修改。
关闭自动提交,执行一些查询,提交查询,然后回滚当前事务:
<?php $mysqli = new mysqli("localhost","my_user","my_password","my_db"); if ($mysqli -> connect_errno) { echo "Failed to connect to MySQL: " . $mysqli -> connect_error; exit(); } // 关闭自动提交 $mysqli -> autocommit(FALSE); // 插入一些值 $mysqli -> query("INSERT INTO Persons (FirstName,LastName,Age) VALUES ('Peter','Griffin',35)"); $mysqli -> query("INSERT INTO Persons (FirstName,LastName,Age) VALUES ('Glenn','Quagmire',33)"); // 提交事务 if (!$mysqli -> commit()) { echo "Commit transaction failed"; exit(); } // 回滚事务 $mysqli -> rollback(); $mysqli -> close(); ?>
关闭自动提交,执行一些查询,提交查询,然后回滚当前事务:
<?php $con=mysqli_connect("localhost","my_user","my_password","my_db"); if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); exit; } // 关闭自动提交 mysqli_autocommit($con,FALSE); // 插入一些值 mysqli_query($con,"INSERT INTO Persons (FirstName,LastName,Age) VALUES ('Peter','Griffin',35)"); mysqli_query($con,"INSERT INTO Persons (FirstName,LastName,Age) VALUES ('Glenn','Quagmire',33)"); // 提交事务 if (!mysqli_commit($con)) { echo "Commit transaction failed"; exit(); } // 回滚事务 mysqli_rollback($con); // 关闭连接 mysqli_close($con); ?>