当前位置: 首页 > news >正文

一句话讲清楚数据库中事务的隔离级别(通俗易懂版)

为什么我只说通俗易懂版不说严谨版?

因为严谨版遍地都是, 但是他们却有一个缺点就是让人看得云里雾里, 所以这就是我写通俗易懂版的初衷!

但是既然是通俗易懂版就必然有缺陷, 只为了各位在开发过程中头脑更加清晰, 如有错误还望兄弟们不吝赐教!

在MySQL数据库中,事务一共有4中隔离级别,它们分别是:

1. 读未提交: 就是在一个事务中, 可以查询到其他事务中执行了update或者insert却没有执行commit语句的数据,所以会产生脏读,幻读,不可重复读的问题(稍后再解释)

2. 读已提交(oracle和sqlServer默认的隔离级别): 就是在一个事务中, 不能查询到其他事务中执行了update却没有执行commit语句的数据了,但是commit后,就能查询到了,这个级别解决了脏读的问题

3. 可重复读(mysql默认的隔离级别): 可以理解为当一个事务开始时, 对整个数据库进行了一次快照,你接下来的所有查询都只能查询到快照中的数据,即使可能这个数据已经被其他事务修改了一千次一万次你也不会知道,插入或者删除多少数据也同理与你本次事务无关

4. 串行化: 可以理解为 如果有多个事务同时访问同一个数据库, 即使他们要操作的表毫无关联, 也要排队一个个等上一个事务commit,从根本上避免了各种问题,但是效率极低

脏读: 我查询到了其他事务中update了但还未commit的数据

幻读: 我使用相同条件查询多次, 结果集可能由于其他已经commit的事务进行了新增或者删除操作导致数据量发生了变化

不可重复读: 我使用相同条件查询多次, 结果集可能由于其他已经commit的事务进行了update操作导致数据内容发生了变化

相关文章:

  • 贪心 Leetcode 53 最大子数组和
  • Pycharm的下载安装与汉化
  • 【Mybatis】多表映射 第二期
  • 德人合科技 | 天锐绿盾终端安全管理系统
  • GO数组切片
  • 排序算法--堆排序
  • Leetcode210. 课程表 II
  • 大语言模型LLM推理加速:LangChain与ChatGLM3-6B的推理加速技术(LLM系列11)
  • 【Redis】高级特性 - 有序集合
  • 【mysql 数据库事务】开启事务操作数据库,写入失败后,不回滚,会有问题么? 这里隐藏着大坑,复试,面试时可以镇住面试老师!!!!
  • 【pytorch】函数记录
  • 【MySQL】学习多表查询和笛卡尔积 - 副本
  • PureFlash v1.9.1特性介绍
  • 【Android 从入门到出门】第二章:使用声明式UI创建屏幕并探索组合原则
  • 【QT+QGIS跨平台编译】之六十三:【QGIS_CORE跨平台编译】—【错误处理:未定义的类QgsMapLayer - QgsMapLayerModel】
  • 10个最佳ES6特性 ES7与ES8的特性
  • Android 架构优化~MVP 架构改造
  • LeetCode算法系列_0891_子序列宽度之和
  • nginx(二):进阶配置介绍--rewrite用法,压缩,https虚拟主机等
  • Phpstorm怎样批量删除空行?
  • Python 基础起步 (十) 什么叫函数?
  • React 快速上手 - 07 前端路由 react-router
  • Redux 中间件分析
  • 力扣(LeetCode)357
  • 每天一个设计模式之命令模式
  • 浅谈Golang中select的用法
  • 悄悄地说一个bug
  • 数据科学 第 3 章 11 字符串处理
  • 微服务核心架构梳理
  • 我这样减少了26.5M Java内存!
  • 原生Ajax
  • 1.Ext JS 建立web开发工程
  • ​比特币大跌的 2 个原因
  • (4) PIVOT 和 UPIVOT 的使用
  • (vue)el-checkbox 实现展示区分 label 和 value(展示值与选中获取值需不同)
  • (zhuan) 一些RL的文献(及笔记)
  • (二)【Jmeter】专栏实战项目靶场drupal部署
  • (转)总结使用Unity 3D优化游戏运行性能的经验
  • (最优化理论与方法)第二章最优化所需基础知识-第三节:重要凸集举例
  • .NET CLR基本术语
  • .NET/C# 使用反射调用含 ref 或 out 参数的方法
  • [3300万人的聊天室] 作为产品的上游公司该如何?
  • [Ariticle] 厚黑之道 一 小狐狸听故事
  • [BT]BUUCTF刷题第4天(3.22)
  • [bzoj1006]: [HNOI2008]神奇的国度(最大势算法)
  • [HeMIM]Cl,[AeMIM]Br,[CeEIM]Cl,([HO-PECH-MIM]Cl,[HOOC-PECH-MIM]Cl改性酚醛树脂
  • [Java][方法引用]构造方法的引用事例分析
  • [Jquery] 实现温度计动画效果
  • [LOJ161] 仙人掌计数
  • [one_demo_6]逆置整数
  • [Power Query] 数据的拆分、提取与合并
  • [python]PyPI使用国内源
  • [SageMath] 关于SageMath本地环境的搭建与基本使用
  • [saiku] olap数据源管理
  • [SetContextPropertiesRule]{Context} Setting property 'source'