数据库 MySQL 四种事务隔离级别代码演示 -- 读未提交;读已提交;可重复读;串行化

news2024/11/30 8:49:19

前提

# 设置数据库隔离级别
SET SESSION TRANSACTION ISOLATION LEVEL 隔离级别;
# 查询事务隔离级别
select @@transaction_isolation;

事务处理的分离水平对应的数据整合情况:

隔离级别非提交读取(脏读)不可重复读取幻读
READ UNCOMMITED
READ COMMITED×
REPEATABLE READ××
SERIALIZABLE×××

建表

CREATE TABLE `student2` (
  `id` int(4) NOT NULL AUTO_INCREMENT COMMENT '学号',
  `name` varchar(30) NOT NULL DEFAULT '匿名' COMMENT '姓名',
  `passwd` varchar(20) NOT NULL DEFAULT '123456' COMMENT '密码',
  `sex` varchar(20) NOT NULL DEFAULT '女' COMMENT '性别',
  `birthday` date DEFAULT NULL COMMENT '出生日期',
  `address` varchar(100) DEFAULT NULL COMMENT '家庭住址',
  `email` varchar(50) DEFAULT NULL COMMENT '邮箱',
  `grade_id` int(10) DEFAULT '1',
  PRIMARY KEY (`id`),
  KEY `fk_grade_id` (`grade_id`),
  CONSTRAINT `fk_grade_id` FOREIGN KEY (`grade_id`) REFERENCES `grade` (`grade_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

插入数据

insert into student2 (name) values ('张三');

读未提交(READ UNCOMMITTED)

脏读

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

不可重复读

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

幻读

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

读已提交(READ COMMITTED)

无 脏读

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

不可重复读

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

幻读

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

可重复读(REPEATABLE READ)

无 脏读

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

无 不可重复读

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

幻读

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

串行化(SERIALIZABLE)

无 脏读

在这里插入图片描述
在这里插入图片描述

事务 1 的 update 语句等待 事务 2 执行完毕才能执行(或者等待至指定超时时间后超时)

在这里插入图片描述
在这里插入图片描述

无 不可重复读

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

无 幻读

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1667806.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【JVM】Class文件的格式

目录 概述 Class文件的格式 概述 Class文件是JVM的输入,Java虚拟机规范中定义了Class文件的结构。Class文件是JVM实现平台无关、技术无关的基础。 1:Class文件是一组以8字节为单位的字节流,各个数据项目按顺序紧凑排列 2:对于占用空间大于8字节的数据…

Geopandas以及CMakeList程序编写技巧

Geopandas官方文档 Geopandas官方文档 reset_index()函数 pandas库中的reset_index()函数是用于重新设置数据框索引的方法。 例如:当我对于文件数据进行了一系列操作后,例如设置了索引set_index,那么会导致数据的索引框发生变化&#xff…

Linux网络编程】传输层中的TCP和UDP(UDP篇)

【Linux网络编程】传输层中的TCP和UDP(UDP篇) 目录 【Linux网络编程】传输层中的TCP和UDP(UDP篇)传输层再谈端口端口号范围划分认识知名端口号netstatiostatpidofxargs UDP协议UDP协议端格式UDP的特点面向数据报UDP的缓冲数据UDP使…

08 - hive的集合函数、高级聚合函数、炸裂函数以及窗口函数

目录 1、集合函数 1.1、size:集合中元素的个数 1.2、map:创建map集合 1.3、map_keys: 返回map中的key 1.4、map_values: 返回map中的value 1.5、array 声明array集合 1.6、array_contains: 判断array中是否包含某个元素 1.7、sort_a…

最佛系的打字练习软件——TL(TypeLetters)

有朋友开玩笑说:TL(TypeLetters)是最佛系的打字练习软件。真的吗?仔细看,好像还真有这么点意思: 无竞速:TL没有速度显示,初学者逐个认清键位,无需关心速度,中…

不训练也能给模型加上各种超能力?

之前我写过一篇 Sakana 与 Jamba (qq.com) Sakana也好,Jamba也罢,其实都是模型合并的一种比较好的项目实践,今天我们可以讨论一下普通开发者是否能像做一个项目一样,合并多个模型,达到自己想要的效果(GPU的连载后面写,东西太多,再给2篇也不知道能不能写完 ) 不同于Sakan…

Apifox 教程:如何实现跨语言调用(Java、PHP、Python、Go 等)

在一些特定场景下,比如需要在 Apifox 中对文件进行读写、加密、转换格式或者进行其它业务的操作时,仅使用 Apifox 内置的 JS 类库可能无法满足业务需求,这时,就可以借助「外部程序」作为解决方案。 外部程序是保存在「外部程序目…

嵌入式 - GPIO编程简介

An Introduction to GPIO Programming By Jeff Tranter Wednesday, June 12, 2019 编者按:本 2019 年博客系列是 ICS 最受欢迎的系列之一,现已更新(2022 年 12 月),以确保内容仍然准确、相关和有用。 本博客是 Integr…

【Mac】Ghost Buster Pro(苹果电脑内存清理专家) v3.2.5安装教程

软件介绍 Ghost Buster pro是一款针对Mac系统的电脑清理和优化工具,可以帮助用户清理系统垃圾、修复注册表错误、卸载不需要的软件、管理启动项等,从而提高系统性能和稳定性。 安装教程 1.打开镜像包,拖动「Ghost Buster Pro」到应用程序中…

当代 Qt 正确的 安装方法 及 多版本切换

此文写于 20240511 首先去网站Index of /official_releases/online_installers下载一个安装器 安装器有什么用? 可以浏览安装版本 安装组件 安装器版本越能 能装的东西越多 现在只能选Qt5 和 Qt6 至于你公司用的Qt4 我也没招 见招时再拆招 安装器 默认国外源 可以换国内…

sql函数--10---In 多个字段

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1.普通 in语句查询sqlMyBatis错误写法正确写法ListString[] 2.In多个字段sql案例脚本实例:错误写法:正确写法: MyBatis XML 写法…

[图解]SysML和EA建模住宅安全系统-02

1 00:00:00,900 --> 00:00:02,690 这个就是一个块定义图了 2 00:00:03,790 --> 00:00:04,780 简称BDD 3 00:00:05,610 --> 00:00:08,070 实际上就是UML里面的类图 4 00:00:08,080 --> 00:00:09,950 和组件图的一个结合体 5 00:00:13,150 --> 00:00:14,690 我…

YOLOv9最新改进系列:融合空间信息关注机制(SimAM)于YOLOv9网络,在通道之间和空间位置之间建立更加准确的关联,助力YOLOv9有效涨点!!!

YOLOv9最新改进系列:融合空间信息关注机制(SimAM)于YOLOv9网络,在通道之间和空间位置之间建立更加准确的关联,助力YOLOv9有效涨点!!! 在此之前!先恭喜两位家人!&#xf…

中国当代最具影响力的人物颜廷利:死神(死亡)并不可怕,可怕的是…

中国当代最具影响力的人物颜廷利:死神(死亡)并不可怕,可怕的是… 在中国优秀传统文化之中,汉语‘巳’字与‘四’同音,在阿拉伯数字里面,通常用‘4’来表示; 作为汉语‘九’字&#x…

鸿蒙开发-ArkTS语言-XML

鸿蒙开发-UI-web 鸿蒙开发-UI-web-页面 鸿蒙开发-ArkTS语言-基础类库 鸿蒙开发-ArkTS语言-并发 鸿蒙开发-ArkTS语言-并发-案例 鸿蒙开发-ArkTS语言-容器 鸿蒙开发-ArkTS语言-非线性容器 文章目录 前言 一、XML概述 二、XML生成 三、XML解析 1.解析XML标签和标签值 2.解析XML属性…

引擎:主程渲染

一、引擎发展 二、引擎使用 1.游戏渲染流程 2.3D场景编辑器操作与快捷键 3.节点的脚本组件 脚本介绍 引擎执行流程 物体节点、声音组件\物理组件\UI组件、脚本组件 暴露变量到面板 4.节点的查找 基本查找 this.node:挂载当前脚本的节点A; this.nod…

APP未上架应用市场,微信商户如何轻松开通APP支付?

在移动互联网时代,APP作为企业与用户之间的重要桥梁,其支付功能的完善与否直接关系到用户体验和企业的营收。然而,有些企业可能面临APP尚未上架应用市场的情况,这时如何开通微信APP支付功能呢?(需要超快捷高…

端午节线上活动方案怎么写?

一年一端午,一岁一安康。 如果您想组织端午活动,却不知道如何安排,可以看看何策网,有很多案例参考,仿造模板修改即可。 下面分享一个线上端午节活动策划方案,希望能帮到你! 端午节作为祭祖祈…

汽车线控转向系统介绍

汽车线控转向系统由方向盘总成、转向执行总成和主控制器(ECU)三个主要部分以及自动防故障系统、电源等辅助系统组成。 线控转向系统(Steering-By-Wire),取消了方向盘和转向车轮之间的机械连接部件,彻底摆脱了机械固件的限制,完全由电能来实现…

Postman历史版本安装与runner测试

前言 实际上就是笔者本地做demo,postman使用了最新版本,本身也没问题,不过postman不支持不登录做runner测试了,很多功能必须登录账号才能使用,否则只能使用http工具发送的能力,而postman本身就是一个简单工…