php 中的事务是原子操作单元,要么全部成功要么全部回滚。它遵循 acid 原则,包括原子性、一致性、隔离性和持久性。要开始事务,使用 mysqli_begin_transaction();提交事务,使用 mysqli_commit();回滚事务,使用 mysqli_rollback()。事务示例:开始事务,执行两个更新语句,如果一个语句失败则回滚事务,否则提交事务。
PHP 中的事务
什么是事务?
事务是一个原子操作单元,要么全部执行成功,要么全部失败回滚。
PHP 中的 ACID 事务
PHP 支持 ACID 事务,即:
- 原子性(Atomicity):事务中的所有操作要么全部执行成功,要么全部回滚。
- 一致性(Consistency):事务完成后,数据库的状态必须处于一致的状态。
- 隔离性(Isolation):一个事务对其他事务的影响是隔离的。
- 持久性(Durability):一旦事务提交,其更改将永久保存。
开始事务
要开始一个事务,请使用 mysqli_begin_transaction() 函数:
<?php $conn = new mysqli("host", "username", "password", "database"); $conn->begin_transaction(); ?>
登录后复制
提交事务
当事务中的所有操作完成后,请使用 mysqli_commit() 函数提交事务:
<?php $conn->commit(); ?>
登录后复制
回滚事务
如果事务中的某个操作失败,请使用 mysqli_rollback() 函数回滚事务:
<?php $conn->rollback(); ?>
登录后复制
事务示例
以下示例演示如何使用 PHP 中的事务:
<?php $conn = new mysqli("host", "username", "password", "database"); $conn->begin_transaction(); $sql = "UPDATE users SET balance = balance + 100 WHERE id = 1"; $conn->query($sql); $sql = "UPDATE accounts SET balance = balance - 100 WHERE id = 2"; $conn->query($sql); $conn->commit(); ?>
登录后复制
在本示例中,如果第二个更新语句失败,事务将回滚,并且两个更新语句都不会应用到数据库。
以上就是php 有哪些事务的详细内容,更多请关注其它相关文章!
Article Links:https://www.hinyin.com/n/161044.html
Article Source:admin
Article Copyright:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。