mysql如何提交事务

来源:这里教程网 时间:2026-02-28 20:11:20 作者:

在 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 设置。不复杂但容易忽略。

相关推荐

热文推荐