mysql如何使用事务_mysql 事务基本使用方法

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

在 MySQL 中,事务是一组 SQL 语句的执行单元,这些操作要么全部成功,要么全部失败。事务确保了数据的一致性和完整性,尤其在处理银行转账、订单处理等关键业务场景中非常重要。下面介绍 MySQL 事务的基本使用方法。

开启事务

在执行需要保证原子性的操作前,必须先开启一个事务。可以通过以下命令显式开启:

START TRANSACTION;

也可以使用 BEGIN;BEGIN WORK;,效果相同。

执行 SQL 操作

在事务开启后,执行的 INSERT、UPDATE、DELETE 等操作不会立即生效,而是处于“暂存”状态。例如:

START TRANSACTION;
UPDATE accounts SET balance = balance - 100 WHERE user_id = 1;
UPDATE accounts SET balance = balance + 100 WHERE user_id = 2;

提交或回滚事务

根据操作结果决定是否保存更改:

COMMIT;:提交事务,使所有更改永久生效。 ROLLBACK;:回滚事务,撤销所有未提交的更改。

接上面的例子:

-- 如果一切正常
COMMIT;

-- 如果出现错误
ROLLBACK;

自动提交模式

MySQL 默认开启自动提交(autocommit),即每条 SQL 语句都会自动提交。可通过以下命令查看和关闭:

SELECT @@autocommit;
SET autocommit = 0; -- 关闭自动提交,开启手动事务控制

设置为 0 后,每个事务都需要手动 COMMIT 或 ROLLBACK。

基本上就这些。掌握 START TRANSACTION、COMMIT、ROLLBACK 和 autocommit 设置,就能在 MySQL 中正确使用事务来保障数据安全。注意:只有支持事务的存储引擎(如 InnoDB)才能使用事务功能。MyISAM 不支持事务。不复杂但容易忽略。

相关推荐