首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >如何开启 MySQL 事务?

如何开启 MySQL 事务?

作者头像
程序员小航
发布2021-07-09 15:55:03
发布2021-07-09 15:55:03
3K0
举报
文章被收录于专栏:程序员小航程序员小航
前言

本文主要介绍 MySQL 是如何开启一个事务的,相关资料也可以查阅官方文档。

https://dev.mysql.com/doc/refman/8.0/en/commit.html

方式 1

START TRANSACTION 或 BEGIN 开始新的事务 COMMIT 提交当前事务 ROLLBACK 回滚当前事务

这是大家熟知的一种方式,其中开启事务的方式 start transactionbegin 是相同的。

方式 2

SET autocommit = 0;

  1. 默认情况下 autocommit = 1,是自动提交事务的。
  2. autommit 是 session 级别的,就是当前连接更改了 autocommit,对其他连接没有影响。
  3. 设置 autocommit 之后,本次连接的所有 sql 都是事务的形式,比如每次 commit 提交。

通过截图可以看出,有一个事务在执行,因为设置了 set autocommit = 0;,所以后面的 update 操作修改结果,其他 session 并不会查到(RR 级别)。

这时候就需要自己手动执行 commit

注意的是,autocommit 没有进行更改,此时 autocommit 值还是 0,也就意味着这个 session 后续的 sql 都是需要手动 commit 的。

- <End /> -

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-06-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员小航 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 方式 1
  • 方式 2
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档