MySQL事务处理能实现自动提交吗

948
2024/10/30 21:31:52
栏目: 云计算
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

MySQL 默认情况下是自动提交的,即每个单独的 SQL 语句都会立即执行并提交。要禁用自动提交并启用事务处理,您需要执行以下操作:

  1. 使用 SET autocommit=0; 命令禁用自动提交。
  2. 使用 START TRANSACTION; 命令开始一个新事务。
  3. 在此事务中执行您的 SQL 语句。
  4. 如果所有语句都成功执行,使用 COMMIT; 命令提交事务。
  5. 如果在执行过程中出现错误,可以使用 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; 命令。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: mysql中startwith的作用是什么