MySQL 默认情况下是自动提交的,即每个单独的 SQL 语句都会立即执行并提交。要禁用自动提交并启用事务处理,您需要执行以下操作:
- 使用
SET autocommit=0;
命令禁用自动提交。 - 使用
START TRANSACTION;
命令开始一个新事务。 - 在此事务中执行您的 SQL 语句。
- 如果所有语句都成功执行,使用
COMMIT;
命令提交事务。 - 如果在执行过程中出现错误,可以使用
ROLLBACK;
命令撤销事务中的所有更改。
示例:
-- 禁用自动提交 SET autocommit=0; -- 开始新事务 START TRANSACTION; -- 执行 SQL 语句 INSERT INTO users (username, email) VALUES ('John', 'john@example.com'); INSERT INTO posts (title, content) VALUES ('My first post', 'This is the content of my first post.'); -- 提交事务 COMMIT;
如果您希望在事务中执行多个语句,只需将它们放在一起,无需在每个语句后添加分号。当您完成所有操作并准备提交事务时,再使用 COMMIT;
命令。