网络编程
位置:首页>> 网络编程>> 数据库>> MySQL开启事务的方式

MySQL开启事务的方式

作者:程序员小航  发布时间:2024-01-22 13:09:56 

标签:MySQL,开启事务

前言

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

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

方式 1

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

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

MySQL开启事务的方式

方式 2

SET autocommit = 0;

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

MySQL开启事务的方式

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

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

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

MySQL开启事务的方式

来源:https://mp.weixin.qq.com/s/UgNvOl0RF9v7w7dOLMnglw

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com