mysqli::commit
(mysqli_commit)提交当前事务
PHP 5, PHP 7, PHP 8
mysqli::commit 函数用于提交当前数据库连接上的事务。该函数通常用于在使用事务控制(如启用自动提交为 false 的情况下)完成了一组数据库操作后,将其结果永久保存到数据库中。
bool mysqli::commit()
或者使用过程化风格:
bool mysqli_commit(mysqli $link)
此函数在成功时返回 true,在失败时返回 false。
<?php $mysqli = new mysqli("localhost", "username", "password", "database"); <p>// 检查连接<br> if ($mysqli->connect_error) {<br> die("连接失败: " . $mysqli->connect_error);<br> }</p> <p>// 关闭自动提交模式<br> $mysqli->autocommit(false);</p> <p>// 执行多个查询作为一个事务<br> $mysqli->query("INSERT INTO users (name) VALUES ('Alice')");<br> $mysqli->query("INSERT INTO users (name) VALUES ('Bob')");</p> <p>// 提交事务<br> if ($mysqli->commit()) {<br> echo "事务提交成功。";<br> } else {<br> echo "事务提交失败。";<br> }</p> <p>$mysqli->close();<br> ?><br>
这个示例连接到数据库后,关闭了自动提交模式,手动执行两个 INSERT 查询,并尝试使用 commit() 方法提交这些操作。如果提交成功,则说明两个插入操作被永久保存到数据库中;否则将输出失败信息。