Mysql事务的处理

news2024/9/23 12:27:10

1、事务,就是一组命令的操作。

        不过这一组命令,我们有时候需要使用手动提交;

1、使用这组命令可以查询出来现在的提交方式:自动提交(就是命令输入,点击enter后,会不会直接对表格产生修改,改为0以后,就需要额外使用一个commit命令才能将命令提交执行);

                          

                        

2、执行出错的时候,

        使用回滚事务操作,将数据改为原来的状态

        rollback;  

3、事务的性质(ACID,网上很多,先不写了,就是针对的一组事务命令)

4、并发事务问题:

(多个事务并发操作同一数据库时,每个事务在使用时,都对数据库进行操作,进行修改后,可能影响其他事务对数据库的访问。类似多线程对共享资源的访问),说是三种问题,实际上使用的时候,对应的是三种操作

(第一种对应的是,当前事务进行读取的时候,另外一个事务对数据表进行了修改,但是另外一个事务还没有执行到提交的那一步。这个过程里第一个事务读取到了,成为脏读)

(第二种对应,使用一个事务先后两次读取同一个记录,另外的事务在两次读取之间对数据进行了修改,导致读取到的信息不一样)

(第三种对应,使用一个事务向表格插入数据前,先查询一下,里面没有目标数据;但是后面执行insert into 插入命令时,表格中已经有了我们要插入的数据,但是使用select 查询命令时仍然查不到,也插入不了,考虑先提交当前事务看看,可能就有了。这样的重点在插入操作)

这些问题的共性,一般都是在一个事务未完成的时候,下一个事务就介入当前事务所用的表格,所以需要注意下。

幻读:

4、事务隔离级别(X号表示隔离级别可以解决的问题)

 隔离越厉害性能越差。最后一种是串行访问,当前事务未处理完之前,其他事务的命令无法执行

 1、设置隔离级别为 serializable 时,第一张图是在其中一个事务中进行更新数据,第二个是在第一个更新完没有提交的时候,就卡在那里了。

                

                

此时信息已经更新了

        ​​​​​​​        ​​​​​​​        

当提交后:当前事务中是这样的,另外一个事务中报了超时错误(可能时间间隔长了)

        

        

5、事务的结束和重新开始 

        开始可以使用 begin和start transaction;当提交后,当前事务就算结束了。这个没有找到类似的资料。

不过处理过程中,不要让事务中使用的命令超时,超时的话,可能系统会自己重新开始事务,以免出现不必要的麻烦

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

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

相关文章

x-cmd pkg | csview - 美观且高性能的 csv 数据查看工具

目录 介绍首次用户功能特点类似工具与竞品进一步阅读 介绍 csview 是一个用于在命令行中查看 CSV 文件的工具,采用 Rust 语言编写的,支持中日韩/表情符号。它允许用户在终端中以表格形式查看 CSV 数据,可以对数据进行排序、过滤、搜索等操作…

关于html导出word总结一

总结 测试结果不理想,html-to-docx 和 html-docx-js 最终导出的结果 都 差强人意,效果可以见末尾的附图 环境 "electron": "24.3.0" 依赖库 html-docx-js html-docx-js - npm html-to-docx html-to-docx - npm file-saver…

Linux技术,winSCP连接服务器超时故障解决方案

知识改变命运,技术就是要分享,有问题随时联系,免费答疑,欢迎联系! 故障现象 使用 sftp 协议连接主机时, 明显感觉缓慢且卡顿,并且时常出现如下报错: 点击重新连接后,又有概率重新连接上; 总之在"连接上"和&…

前端js调用Lodop实现云打印

一、下载Lodop控件 官网:下载中心 - Lodop和C-Lodop官网主站 二、解压后安装 双击进行安装,里面有些页面文件是一些教程案例 勾选云服务工作模式 安装成功会自动启动 浏览器访问地址:http://localhost:8000/ 首页最下面有个教程案例跳转地址&…

kali_linux换源教程

vim /etc/apt/sources.list #阿里云deb http://mirrors.aliyun.com/kali kali-rolling main non-free contribdeb-src http://mirrors.aliyun.com/kali kali-rolling main non-free contrib#清华大学源deb http://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib…

navicat for oracle

前言 Oracle中的概念并不是创建数据库,而是创建一个表空间,然后再创建一个用户,设置该用户的默认表空间为我们新创建的表空间,这些操作之后,便和你之前用过的mysql数据库创建完数据库一模一样了。 创建数据库 使用O…

PHP信息分类网源码带手机端和文档

PHP信息分类网源码带手机端和文档 安装简易说明: 上传 → 安装 → 进入后台 → 恢复数据 → 修改cookie记录值(第3点有说明) 1.上传程序到网站根目录,访问http://域名/install/index.php 进行安装,不要直接打开网址,先直接安装&am…

Java学习手册——第六篇输入输出

几乎所有的开发语言都会有输入输出,程序的定义里面也有输入输出,可以见得输入输出是何等的重要。如果没有输入,人类如何与计算机交流?如果没有输出,一切努力都是白费,因为我们看不到结果。 这里的输入输出你…

常用计算电磁学算法特性与电磁软件分析

常用计算电磁学算法特性与电磁软件分析 参考网站: 计算电磁学三大数值算法FDTD、FEM、MOM ADS、HFSS、CST 优缺点和应用范围详细教程 ## 基于时域有限差分法的FDTD的计算电磁学算法(含Matlab代码)-框架介绍 参考书籍:The finite…

Multi-Concept Customization of Text-to-Image Diffusion——【代码复现】

本文是发表于CVPR 2023上的一篇论文:[2212.04488] Multi-Concept Customization of Text-to-Image Diffusion (arxiv.org) 一、引言 本文主要做的工作是对stable-diffusion的预训练模型进行微调,需要的显存相对较多,论文中测试时是在两块GP…

原子操作类原理剖析

UC包提供了一系列的原子性操作类,这些类都是使用非阻塞算法CAS实现的,相比使用锁实现原子性操作这在性能上有很大提高。 由于原子性操作类的原理都大致相同,所以只讲解最简单的AtomicLong类的实现原理以及JDK8中新增的LongAdder和LongAccumu…

领导风格测试

领导风格指的是管理者在开展管理工作时的思维和行为模式,通常我们也称之为习惯,或者是人格特征。这种习惯是固化的,是长期的经历所形成的,其中包含了个人的知识,经验,人际关系等。领导风格测试是企业人才选…

必练的100道C语言程序设计练习题(上)

前言: 在计算机编程的世界中,C语言一直是一门备受推崇的语言。它的简洁性、高效性以及广泛应用使得学习C语言成为每一位程序员的必由之路。然而,掌握这门语言并不是一蹴而就的事情,它需要不断的练习和实践。为了帮助各位编程爱好者更好地理解…

进程和线程的比较

目录 一、前言 二、Linux查看进程、线程 2.1 Linux最大进程数 2.2 Linux最大线程数 2.3 Linux下CPU利用率高的排查 三、线程的实现 四、上下文切换 五、总结 一、前言 进程是程序执行相关资源(CPU、内存、磁盘等)分配的最小单元,是一…

Halcon边缘滤波器edges_image 算子

Halcon边缘滤波器edges_image 算子 基于Sobel滤波器的边缘滤波方法是比较经典的边缘检测方法。除此之外,Halcon也提供了一些新式的边缘滤波器,如edges_image算子。它使用递归实现的滤波器(如Deriche、Lanser和Shen)检测边缘&…

【无标题】关于异常处理容易犯的错

一般项目是方法打上 try…catch…捕获所有异常记录日志,有些会使用 AOP 来进行类似的“统一异常处理”。 其实,这种处理异常的方式非常不可取。那么今天,我就和你分享下不可取的原因、与异常处理相关的坑和最佳实践。 捕获和处理异常容易犯…

Java研学-分页查询

一 分页概述 1 介绍 将大量数据分段显示,避免一次性加载造成的内存溢出风险 2 真假分页 ① 真分页   一次性查询出所有数据存到内存,翻页从内存中获取数据,性能高但易造成内存溢出 ② 假分页   每次翻页从数据库中查询数据&#xff0c…

day16 二叉树的最大深度 n叉树的最大深度 二叉树的最小深度 完全二叉树的节点数

题目1:104 二叉树的最大深度 题目链接:104 二叉树的最大深度 题意 二叉树的根节点是root,返回其最大深度(从根节点到最远叶子节点的最长路径上的节点数) 递归 根节点的的高度就是二叉树的最大深度 所以使用后序遍…

【Node.js学习 day4——模块化】

模块化介绍 什么是模块化与模块? 将一个复杂的程序文件依据一定规则(规范)拆分成多个文件的过程称之为模块化 其中拆分的每个文件就是一个模块,模块的内部数据是私有的,不过模块可以暴露内部数据以便其他模块使用。什…

010集:with as 代码块读写关闭文件—python基础入门实例

接009集: 读写文本文件的相关方法如下。 read ( size-1 ):从文件中读取字符串, size 限制读取的字符数, si ze-1 指对读取的字符数没有限制。 readline ( size-1 ):在…