autocommit 自动提交

MySQL 命令行默认每条语句执行完立刻 COMMIT,这叫自动提交。想手动控制事务,得先把这个开关关掉,否则你的 BEGIN 形同虚设。

autocommit 自动提交要点

autocommit 自动提交示例

						-- 查看当前是否自动提交
						SELECT @@autocommit;

						-- 关闭自动提交,进入手动事务模式
						SET autocommit = 0;
						UPDATE accounts SET balance = balance + 50 WHERE user_id = 2;
						COMMIT;

						-- 用完恢复
						SET autocommit = 1;
避坑提醒:关掉 autocommit 后忘了 COMMIT,改动只对当前连接可见且一直占着锁,是长事务的常见诱因。
autocommit 自动提交 · MySQL 事务 知识卡片
卡片 05 / 08 · MySQL 事务(1080×1440 速查卡片)

MySQL 事务知识点