返回顶部
首页 > 资讯 > 数据库 >mysql事务管理操作详解
  • 505
分享到

mysql事务管理操作详解

mysql事务管理 2022-05-23 07:05:02 505人浏览 泡泡鱼
摘要

本文实例讲述了Mysql事务管理操作。分享给大家供大家参考,具体如下: 本文内容: 什么是事务管理 事务管理操作 回滚点 默认的事务管理 首发日期:2018-04-18 什么是事务管理:

本文实例讲述了Mysql事务管理操作。分享给大家供大家参考,具体如下:

本文内容:

  • 什么是事务管理
  • 事务管理操作
  • 回滚点
  • 默认的事务管理

首发日期:2018-04-18


什么是事务管理:

  • 可以把一系列要执行的操作称为事务,而事务管理就是管理这些操作要么完全执行,要么完全不执行(很经典的一个例子是:A要给B转钱,首先A的钱减少了,但是突然的数据库断电了,导致无法给B加钱,然后由于丢失数据,B不承认收到A的钱;在这里事务就是确保加钱和减钱两个都完全执行或完全不执行,如果加钱失败,那么不会发生减钱)。
  • 事务管理的意义:保证数据操作的完整性。
  • mysql中并不是所有的数据引擎都支持事务管理的,只有innodb支持事务管理。

事务管理的特性:

  • 原子性:事务的整个操作是一个整体,不可以分割,要么全部成功,要么全部失败。
  • 一致性:事务操作的前后,数据表中的数据没有变化。
  • 隔离性:事务操作是相互隔离不受影响的。
  • 持久性:数据一旦提交,不可改变,永久的改变数据表数据。

事务管理操作:

  • 开启事务管理:开启之后,下面的sql语句并不会马上执行并把结果写到表中,而是会写到事务日志中。
    • start transaction;
  • 回退操作:回退会清掉开始事务管理之后写到事务日志中的内容,即恢复到开启事务管理之前。
    • 语法:rollback;
    • 注意:回退操作只是回退"写"的内容,对于普通的读表select语句不能回退。
  • 事务提交:将sql语句的结果写到数据表中。
    • 语法:commit:

实验表:


create table bankaccount(id int primary key auto_increment,name varchar(15),money int);
insert into bankaccount(name,money) values("Jobs",2000);
insert into bankaccount(name,money) values("Bill",3000);

image

image

补充:

  • 当 commit 或 rollback 语句执行后,事务会自动关闭(将来的更改会隐含提交)。
  • 机制:在事务操作一个表时,如果使用索引来取值,那么会锁定到对应行;如果没有使用索引来取值,那么会锁定整个表。锁定之后其他连接无法操作指定行或表。

回滚点:

  • 回滚点可以指定rollback回退的位置【比如现在打了100条命令,发现第81打错了,如果回滚到打了81命令之前一点而不是回滚到开启事务之前就可以节省下很多时间。】
  • 语法:
    • 创建回滚点:savepoint 回滚点名;
    • 回滚到回滚点:rollback to 回滚点名;

image

补充:

  • 回滚点在事务管理关闭(rollback或commit之后)之后失效,不要在事务之外使用回滚点。

默认的事务管理:

  • 默认情况下,mysql的事务管理是关闭(自动事务)的,语句的结果会马上写到数据表中。
    • 可以通过show variable like 'autocommit';来查看是否开启自动事务,值为1为自动事务已开启,为0则为关闭。
  • 关闭自动事务:set autocommit =0;【关闭后需要commit来执行每一条语句,相当于开始了事务管理】
    • 不过注意的是set autocommit针对的是会话变量,所以这个设置只在此次会话连接中生效。

更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL事务操作技巧汇总》、《MySQL索引操作技巧汇总》、《MySQL常用函数大汇总》、《MySQL日志操作技巧大全》、《MySQL存储过程技巧大全》及《MySQL数据库锁相关技巧汇总》

希望本文所述对大家MySQL数据库计有所帮助。

您可能感兴趣的文档:

--结束END--

本文标题: mysql事务管理操作详解

本文链接: https://lsjlt.com/news/9531.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • mysql事务管理操作详解
    本文实例讲述了mysql事务管理操作。分享给大家供大家参考,具体如下: 本文内容: 什么是事务管理 事务管理操作 回滚点 默认的事务管理 首发日期:2018-04-18 什么是事务管理: ...
    99+
    2022-05-23
    mysql 事务管理
  • MySQL事务管理的作用详解
    目录1.为何使用事务管理2.数据库事务的原理3.什么是事务3.1 事务的特性ACID3.2 事务的并发问题3.3 隔离级别4.Spring事务管理1.为何使用事务管理 可以保证数据的完整性。事务(Transaction)...
    99+
    2024-04-02
  • MySQL数据操作管理示例详解
    目录一、查看表和查看表的定义二、删除表三、创建表四、表类型五、修改表六、完整性1、数据完整性2、使用约束实现数据完整性3、在数据表上添加约束4、删除约束七、添加数据八、修改数据九、删除数据十、SQL语句中的运算符算数运算...
    99+
    2024-04-02
  • redis事务常用操作详解
    事务 MULTI 、 EXEC 、 DISCARD 和 WATCH 是 Redis 事务相关的命令。事务可以一次执行多个命令, 并且带有以下两个重要的保证: 事务是一个单独的隔离操作:事务中的所有命令都会...
    99+
    2024-04-02
  • MySQL 事务管理
      事务的4个特性(ACID) 原子性 Atomicity。每个事务中的操作,要么都成功,要么都失败 一致性 Consistency。事务执行前后,数据库中的数据应该保持一致 隔离性 Isolation。事务之间应该是隔离的,事...
    99+
    2015-09-09
    MySQL 事务管理
  • 【MySQL系列】MySQL的事务管理的学习(一)_ 事务概念 | 事务操作方式 | 事务隔离级别
    「前言」文章内容大致是MySQL事务管理。 「归属专栏」MySQL 「主页链接」个人主页 「笔者」枫叶先生(fy) 目录 一、事务概念二、事务的版本支持三、事务提交方式四、事务常...
    99+
    2023-09-09
    mysql 学习 adb
  • PostgreSql JDBC事务操作方法详解
    目录JDBC事务相关方法简介禁用自动提交模式提交事务回滚事务PostgreSQL JDBC 事务示例JDBC事务相关方法简介 本文将借助示例,简单讲解下JDBC操作Pg事务的流程。 首先来简单讲解下事务的定义:为了确保两...
    99+
    2022-11-19
    PostgreSql JDBC事务操作 PostgreSql JDBC
  • Spring详细解读事务管理
    目录什么是事务Spring事务配置Spring事务传播行为1. PROPAGATION_REQUIRED2. PROPAGATION_SUPPORTS3. PROPAGATION_R...
    99+
    2024-04-02
  • Spring事务管理详细讲解
    目录事务回顾spring事务操作基于注解声明事务@Transactional注解使用事务传播机制事务隔离级别@Transactional其他属性基于XML 声明式事务完全注解开发说明...
    99+
    2022-11-13
    Spring事务管理 Spring事务原理 Spring事务管理机制
  • axios接口管理优化操作详解
    目录强化功能接口文件写法简化任务调度、Loading调度提示信息自由化总结强化功能 本文针对中大型的后台项目的接口模块优化,在不影响项目正常运行的前提下,增量更新。 接口文件写法简...
    99+
    2022-12-15
    axios 接口管理 axios 接口管理优化
  • C++资源管理操作方法详解
    目录以对象管理资源在资源管理类中小心copy行为在资源管理类中提供对原始资源的访问成对使用new和delete时要采用相同形式以独立语句将new对象置入智能指针以对象管理资源 cla...
    99+
    2024-04-02
  • MySQL数据管理操作示例讲解
    目录外键DML语言添加 insert修改 update删除 delete外键 方式一:在创建表的时候,增加约束 删除有外键的表的时候,要先删除引用外键的表 物理外键:不建议使用,数据库级别的外键,不建议使用!(...
    99+
    2022-12-22
    MySQL数据管理 SQL数据管理
  • C#目录和文件管理操作详解
    目录目录和文件管理Environment类例子DriveInfo类Path类目录管理文件管理总结目录和文件管理 在.NET框架中,与操作系统环境相关的类主要有两个: 一个是Envir...
    99+
    2022-11-13
    c# 当前目录文件 c文件管理代码 c# 文件管理
  • SpringAOP事务管理的示例详解
    目录转账案例-环境搭建步骤1:准备数据库表步骤2:创建项目导入jar包步骤3:根据表创建模型类步骤4:创建Dao接口步骤5:创建Service接口和实现类步骤6:添加jdbc.pro...
    99+
    2024-04-02
  • Spring 事务管理详解及使用
    ✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识...
    99+
    2023-09-02
    spring java mybatis
  • SpringBoot超详细讲解事务管理
    目录1. 事务的定义2. 事务的特性3. 事务的隔离性4. 事务管理5. 示例1. 事务的定义 事务是由 N 步数据库操作序列组成的逻辑执行单元,这系列操作要么全部执行,要么全部放弃...
    99+
    2024-04-02
  • MySQL主备操作以及原理详解
    目录1. mysql主备(主从)配置原理,并且在linux上部署MySQL主备2. 理解MySQL备份原理,以及理解什么是逻辑备份?3. 学会使用mysqldump进行逻辑备份今天我们从三个标题来讲述一下MySQL主备操...
    99+
    2023-04-30
    MySQL主备操作 MySQL主备
  • Java事务管理学习之JDBC详解
    什么是Java事务通常的观念认为,事务仅与数据库相关。事务必须服从ISO/IEC所制定的ACID原则。ACID是原子性(atomicity)、一致性(consistency)、隔离性(isolation)和持久性(durability)的缩...
    99+
    2023-05-31
    java jdbc 事务管理
  • mysql视图之管理视图实例详解【增删改查操作】
    本文实例讲述了mysql视图之管理视图操作。分享给大家供大家参考,具体如下: mysql提供了用于显示视图定义的SHOW CREATE VIEW语句,我们来看下语法结构: SHOW CREATE VIE...
    99+
    2024-04-02
  • MySQL基础篇(06):事务管理,锁机制案例详解
    本文源码:GitHub·点这里 || GitEE·点这里 一、锁概念简介 1、基础描述 锁机制核心功能是用来协调多个会话中多线程并发访问相同资源时,资源的占用问题。锁机制是一个非常大的模块,贯彻MySQL的几大核心难点模块:索引,...
    99+
    2018-06-26
    MySQL基础篇(06):事务管理,锁机制案例详解
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作