Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >MySQL 事务介绍及使用方法

MySQL 事务介绍及使用方法

作者头像
很酷的站长
发布于 2022-12-16 13:23:19
发布于 2022-12-16 13:23:19
54600
代码可运行
举报
运行总次数:0
代码可运行
1. MySQL 事务介绍

事务就是一组原子性的 SQL 语句,或者说一个独立的单元。可以理解为一个事务对应的是一组完整的业务(一组SQL),这个事务中的一切操作要么都成功要么都失败,只要有一个操作失败了,那么整个事务操作都将回滚到事务开始前

InnoDB 存储引擎才支持事务,而 MyISAM 不支持事务,所以在使用事务前要确认下当前数据库的存储引擎是否支持事务

事务主要用来处理操作量大,复杂读较高的操作。其实就是增删改多个表或多条数据时,让其具有原子性,要么都成功,要么都失败时使用,主要用来管理 insert,delete,update 语句

2. MySQL 事务处理的两种方法

1. 方式一: 使用 begin,rollback,commit 处理事务

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 开始事务
begin;
# 回滚事务
rollback;
# 提交事务
commit;

2. 直接使用 set 来改变 MySQL 的自动提交模式

站长源码网

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 关闭自动提交
SET AUTOCOMMIT = 0;
# 开启自动提交
SET AUTOCOMMIT = 1;
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

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

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【MySQL】 事务的概念及ACID属性和使用
一个 MySQL 数据库,可不止你一个事务在运行,同一时刻,甚至有大量的请求被包装成 事务,在向 MySQL 服务器发起事务处理请求。而每条事务至少一条 SQL ,最多很多 SQL ;这样如果大 家都访问同样的表数据,在不加保护的情况,就绝对会出现问题。甚至,因为事务由多条 SQL 构成,那 么,也会存在执行到一半出错或者不想再执行的情况,那么已经执行的怎么办呢?
IsLand1314
2025/05/28
1360
【MySQL】 事务的概念及ACID属性和使用
事务、视图、锁表
事务(TRANSACTION)是作为单个逻辑工作单元执行的一系列操作 多个操作作为一个整体向系统提交,要么都执行、要么都不执行 事务是一个不可分割的工作逻辑单元
用户9979303
2022/10/28
7070
【MySQL】MySQL的事务
数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查
陶然同学
2023/03/12
3.7K0
【MySQL】MySQL的事务
mysql系列——事务(Transaction)详解
这个其实用脚趾头想想也知道它的重要性,举个简单的例子: 一个用户提交了一个订单,那么这条数据包含了两个信息,用户信息 和购买的 商品信息,我需要把他们分别存到 用户表 和 商品表,如果不采用事务,可能会出现,商品信息插入成功,而用户信息没有,这时候就会出现无主商品了,用户付了钱,却得不到商品,这就尴尬了,而如果采用事务,就可以保证,用户信息 和 商品信息 都必须插入成功,该次事务才算成功,那就不会出现这种问题了
solve
2019/10/30
6510
MySQL事务处理:如何确保数据一致性与可靠性
事务(Transaction)是数据库管理系统(DBMS)中的一个核心概念。MySQL 事务是指一组数据库操作,作为一个整体进行处理,确保要么全部成功,要么全部失败。
用户7954602
2024/12/21
2750
MySQL事务处理:如何确保数据一致性与可靠性
MySQL数据库——事务
用户定义了一系列执行SQL语句的操作,这些操作要么完全的执行,要么全部都不执行,他是一个不可分割的工作执行单位,这也是为了保证数据库的完整性。MySQL 事务主要用于处理操作量大,复杂度高的数据。
落雨
2022/03/07
29.8K0
MySQL 中事务详解
http://blog.csdn.net/qh_java/article/details/14045765
bear_fish
2018/09/20
1.1K0
MySQL事务autocommit自动提交
image.png MySQL默认操作模式就是autocommit自动提交模式。这就表示除非显式地开始一个事务,否则每个查询都被当做一个单独的事务自动执行。我们可以通过设置autocommit的值改变是否是自动提交autocommit模式。 通过以下命令可以查看当前autocommit模式 mysql> show variables like 'autocommit'; +---------------+-------+ | Variable_name | Value | +--------------
java达人
2018/01/31
4.6K0
MySQL事务autocommit自动提交
全网最通俗易懂的spring框架事务处理总结
Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用。Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson创建。简单来说,Spring是一个分层的JavaSE/EEfull-stack(一站式)轻量级开源框架。
晴天娃娃只会笑不会哭
2022/02/15
4530
【黄啊码】MySQL入门—9、什么?都2022了,还不知道什么是事务?
​大家好!我是黄啊码,前几天有位入门【编程,不是我家门,别想多】不久的小姐姐跟我说:啊码,我做了一个订单系统,但订单没付款前就往数据库插入新数据,结果我这么一直操作就会产生好多 订单,这该咋办?我说:
黄啊码
2022/10/24
3130
【黄啊码】MySQL入门—9、什么?都2022了,还不知道什么是事务?
MySQL TCL 事务控制
MySQL 中并非所有的数据库存储引擎都支持事务操作,比如 MyISAM 就不支持。所以,使用事务处理的时候一定要确定所操作的表示是否支持事务处理,可以通过查看建表语句来查看有没有指定事务类型的存储引擎。当然,事务处理是为了保障表数据原子性、一致性、隔离性、持久性。这些都需要消耗系统资源,请谨慎选择。
恋喵大鲤鱼
2023/10/12
2710
听说Mysql你很豪横?-------------深入解析mysql数据库中的事务!
2、 确保表中的每列都和主键相关(不然东一句西一句就乱了) 每张表中只有一个主键 建立在第一范式之上的,一个表中只能保存一种数据 不可以把多种数据保存在同一张数据库表中~
不吃小白菜
2020/09/03
7490
听说Mysql你很豪横?-------------深入解析mysql数据库中的事务!
MySQL 事务详解
事务是一组操作的集合,它是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向系
久绊A
2023/04/10
2660
MySQL从删库到跑路_高级(七)——事务和锁
A、原子性(Atomicity) 表示组成一个事务的多个数据库操作是一个不可分隔的原子单元,只有所有的操作执行成功,整个事务才提交,事务中任何一个数据库操作失败,已经执行的任何操作都必须撤销,让数据库返回到初始状态。 B、一致性(Consistency) 事务操作成功后,数据库所处的状态和它的业务规则是一致的,即数据不会被破坏。 C、隔离性(Isolation) 在并发数据操作时,不同的事务拥有各自数据空间,它们的操作不会对对方产生干扰。数据库规定了多种事务隔离级别,不同隔离级别对应不同的干扰程度,隔离级别越高,数据一致性越好,但并发性越弱。 D、持久性(Durabiliy) 一旦事务提交成功后,事务中所有的数据操作都必须被持久化到数据库中,即使提交事务后,数据库马上崩溃,在数据库重启时,也必须能保证能够通过某种机制恢复数据。
良月柒
2019/03/19
7550
mysql系列-事务
在mysql中,常见的存储引擎有innodb、myisam,memory等。其中innodb支持事务(transaction),而myisam,memory等不支持事务。
用户6182664
2022/11/14
2720
Mysql之事务(上)
事务的存在是为了保证数据的完整性、一致性、隔离性和持久性(即ACID原则),尤其在面对错误、并发和系统崩溃等不确定性时,能够确保数据库处于一个可靠和一致的状态。
猫咪-9527
2025/04/02
1140
Mysql之事务(上)
MySQL 事务
  事务(Transaction),一般是指要做的或所做的事情。在计算机术语中是指访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。事务通常由高级数据库操纵语言或编程语言(如 SQL,C++ 或 Java)书写的用户程序的执行所引起,并用形如 begin transaction 和 end transaction 语句或函数调用来界定。事务由事务开始(begin transaction)和事务结束(end transaction)之间执行的全体操作组成。在 MySQL 中只有使用了 Innodb 数据库引擎的数据库或表才支持事务。事务处理可以用来维护数据库的完整性,保证成批的 SQL 语句要么全部执行,要么全部不执行。一般用来管理 insert,update,delete 语句。
Demo_Null
2020/09/28
2.2K0
MySQL 事务
事务的ACID特性
事务存在的意义:保证系统中的数据是正确的,不同数据间不会产生矛盾,也就是保证数据状态的一致性。
真正的飞鱼
2022/09/09
4570
【MySQL】事务
当客户端A检查还有一张票时,将票卖掉,还没有执行更新数据库的时候,客户端B检查了票数,发现大于0,于是又买了一次票。然后客户端A将票数更新回数据库。于是就出现了同一张票被卖了两次的情况。
YoungMLet
2024/03/01
2930
【MySQL】事务
Mysql事物隔离
最近工作内容需要向一张表里面写入数据,有两个实现方法,每种方法会运行得到一份结果,两个结果的key会有大部分重复,后面跟的value会有不同。 表格中只允许两个结果中其中的一个key存在,二者选其一,只能更新替代。在往表里写的程序是没有错误的,但最终从表里查询的时候,发现很多key有两份数据结果,思考其原因,可能跟事物隔离有关系,这里讲解下事物及事物隔离。
用户3578099
2019/08/15
1.7K0
相关推荐
【MySQL】 事务的概念及ACID属性和使用
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验