先关闭自动提交并开启事务,执行SQL后提交或回滚。具体为:SET autocommit = 0; BEGIN; 执行操作;无误则 COMMIT,出错则 ROLLBACK,确保原子性。

在 MySQL 中,提交事务是通过 COMMIT 语句来完成的。当你开启一个事务后,所做的修改不会立即生效,只有在执行 COMMIT 后才会永久保存到数据库中。
MySQL 默认是自动提交模式(autocommit = 1),也就是说每条 SQL 语句都会被自动当作一个事务提交。要手动控制事务,需要先关闭自动提交:
SET autocommit = 0;然后可以显式地开始一个事务:
BEGIN;或者使用:
START TRANSACTION;接着执行你的 SQL 操作,比如:
UPDATE accounts SET balance = balance - 100 WHERE id = 1;UPDATE accounts SET balance = balance + 100 WHERE id = 2;确认操作无误后,提交事务:
COMMIT;如果在事务过程中发现错误,不想保存更改,可以使用:
ROLLBACK;这会撤销从 BEGIN 之后所有的操作,恢复到事务开始前的状态。
如果 autocommit 是开启状态(默认),每个 SQL 语句都会独立提交,无法回滚。因此在需要保证多个操作原子性时(如转账),必须手动关闭 autocommit 并使用 BEGIN 和 COMMIT 配合。
基本上就这些。关键点是:用 BEGIN 开启,COMMIT 提交,ROLLBACK 回滚,同时注意 autocommit 设置。不复杂但容易忽略。
以上就是mysql如何提交事务的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号