当前位置:首页 > 日记 > 正文

mysql事务概念简介

mysql事务概念简介
事务由数据库操作序列的一个步骤或几个步骤组成一个逻辑执行单元,它要么执行全部要么放弃所有执行。程序和事务是两个不同的概念。一般来说:程序可能包含多个事务。

一个交易有四个特点:Atomicity,一致性,隔离性和耐久性。这四个特征也被称为酸。

1)原子性:事务是在应用程序执行的最小单位,如原子是自然界中最小的粒子,具有相同特征的非细分。交易是在最小的可执行应用逻辑。

2)一致性:事务的执行结果必须数据库从一个一致的状态变化到另一个数据库处于一致状态时,数据库只包含事务的提交成功的结果的一致性是保证原子性。

3)隔离:每个事务的执行互不干扰,和任何交易的内部操作是从其他并发事务分离。也就是说,并发执行的事务不能对其他中间状态存在,这是执行的交易不能相互作用。

4):也称为持久持久持久性,自提交服务一旦提交,对数据进行的任何更改,都应记录到永久内存中,通常存储在物理数据库中。

在关系数据库中,事务的隔离被划分为四个隔离级别,在阅读这四个层次之前引入了一些关于读取数据的概念。

1)脏读(脏读):所谓的脏读是脏数据的读取(脏数据),和脏数据是指未提交的数据。也就是说,一个事务修改的记录,在本次交易完成并提交,这个数据是在等待状态(提交,此时,也可以回滚事务)二读这篇文章未提交的数据,然后进行进一步的处理,将未提交的数据依赖性,这种现象称为脏读。

2)不重复读取不重复。一个事务一个接一个地读取相同的记录,但是两个读数据是不同的。我们称之为不可重复读,也就是说,在两个读取之间,事务被其他公司修改。

3)幻读:一个事务再次检索先前的数据按照相同的查询条件,但发现其他事务插入新数据满足查询条件。这种现象被称为魔力阅读。
事务四隔离级别:

1)未提交读(读未提交):SELECT语句是以非锁定方式执行的,因此读取脏数据是可能的,隔离级别是最低的。

2)提交读(读提交):提交的数据只能被读取,也就是说,脏读的解决方案,但未解决的不能重复。

3)可重复读(反复读):在同一事务中的查询是在事务开始时一样,在InnoDB默认级别。在SQL标准的隔离级别,消除了不重读,但仍有幻想。

4)串口读取(序列化):完整的序列化读取,所有的SELECT语句被隐式地转换为选择…锁定共享模式,即读取和使用表级共享锁,读写将相互阻塞。最高级别的隔离。
隔离级别比较表:
数据库的事务由以下语句组成:

一组DML(数据操纵语言,即,数据操作语言)将这套DML修改后保持良好的一致性。

DDL(数据定义语言,即,数据定义语言)语句。

DCL(数据控制语言、数据控制语言)语句。

DDL和DCL语句只能有最多一个,因为DDL和DCL语句导致交易须立刻。

当公司包含的所有数据库操作成功执行时,提交提交事务以使这些更改永久不变。

事务提交有两种方式:显式提交和自动提交。

(1)显式提交:使用提交。

(2)自动提交:DDL和DCL的执行,或正常退出程序。
数据库事务传递的级别指的是事务嵌套时应该采用什么策略,即在事务中调用其他事务,以及如何处理

如果有两件事:
{服务
无效的方法(){
serviceb。MethodB();
}

}

{ serviceb
无效的方法(){
}
}

1:propagation_required

添加当前正在执行的事务不在另一个事务中,因此设置了一个新事务。

例如,对serviceb.methodb交易水平定义为propagation_required,所以当servicea.methoda执行,

servicea.methoda已经完成的交易,当ServiceB.methodB被称为,和serviceb.methodb看到它运行在ServiceA.methodA

在交易中,没有新的业务。如果servicea.methoda运行时,他发现他不是一个交易,他将自己的交易。

这样,发生异常的servicea.methoda任何地方或在serviceb.methodb任何地方,并回滚事务。即使serviceb。方法的交易已

提交,但servicea.methoda将回滚在接下来的失败,和serviceb.methodb将回滚

2:propagation_supports

如果当前处于事务中,即以事务的形式运行,如果事务不再在事务中运行,则它将以非事务的形式运行。

3:propagation_mandatory

它必须在一个事务中运行,也就是说,他只能由一个父函数调用。否则,他将抛出异常。

4:propagation_requires_new

这是一点。例如,我们设计的servicea.methoda为propagation_required交易水平,和serviceb.methodb交易水平propagation_requires_new,

当执行到ServiceB.methodB,服务方法的事务将挂起。serviceb.methodb将开始一个新的交易,等待serviceb方法的交易完成。

他继续进行。他和propagation_required交易之间的区别在于对事务的回滚的程度。因为serviceb.methodb是一个新的交易,它的存在

两个不同的交易。如果serviceb.methodb已提交,然后servicea.methoda未能滚回来,和serviceb.methodb不会回滚。如果ServiceB.methodB没有回滚,

如果他抛出该异常是由servicea.methoda被俘的servicea.methoda交易仍可能被提交。

5:propagation_not_supported

交易是不支持的。例如,对servicea.methoda交易水平propagation_required,和serviceb.methodb交易水平propagation_not_supported,

当servicea.methoda执行的serviceb.methodb,servicea.methoda交易暂停,他运行在一个非交易状态,然后继续交易的交易。

6:propagation_never

在一个事务中执行不能。假设servicea.methoda交易水平propagation_required,和serviceb.methodb交易水平propagation_never,

然后serviceb.methodb会抛出。

7:propagation_nested

了解嵌套的关键是保存点。区别他和propagation_requires_new是propagation_requires_new是另一个交易,将独立于父亲的事务。

而嵌套的事务则取决于他父亲的事务,他的提交将连同他父亲的事务一起提交,也就是说,如果父亲的交易最终回滚,他也会回滚。

对嵌套事务的优势在于,他有一个保存点。

相关文章

如何配置环境变量后,mysql5.7数据库

如何配置环境变量后,mysql5.7数据库

数据库安装,配置环境变量,电脑软件,如果我们安装MySQL在windows10 windows10系统安装后,如果我们不配置环境变量,我们必须进入mysql安装目录,当我们使用命令行进行操作。操作起来会这样很麻烦。我该怎么办在赢10系统配置MySQL环境变量的方法。…

打开Foxmail交户口迁移滤波器

打开Foxmail交户口迁移滤波器

滤波器,户口迁移,电脑软件,Foxmail,有时我们需要使用一个过滤器的几种不同的邮箱帐户在Foxmail,和最常用的方法是创建一个过滤器反复。如果过滤规则是相同的,它不需要反复过滤,直接使用Foxmail的导出和导入功能实现跨账户转账的过滤器。 打开F…

PS图象处理软件只是一种布缝制的字

PS图象处理软件只是一种布缝制的字

字体,图象,处理软件,电脑软件,PS,经常看到在线设计的漂亮字体令人羡慕。现在让我们学习制作布料的方法。 1。首先,创建一个新的ps文件。 2,双击文本图层,打开图层样式界面。选择笔画。效果图示。 3,右键显示位置。选择在弹出菜单中创建一个图…

10种最常见的HTML5问答访谈

10种最常见的HTML5问答访谈

最常见,问答,电脑软件,本文分享了最常见的10个HTML5面试问题,希望大家喜欢它。 问题1。新的HTML5文档类型和字符集是什么 答:HTML5文档类型很简单:HTML5使用UTF-8编码。 问题2,如何在HTML5中嵌入音频 答:HTML5支持音频MP3,WAV,OGG格式,,以下是在…

InnoDB修改MySQL的数据库引擎的方

InnoDB修改MySQL的数据库引擎的方

数据库引擎,方法,修改,电脑软件,InnoDB,对于MySQL数据库,你必须使用事务和行级锁使用InnoDB引擎。如果你想使用全文索引,您必须使用myisam.innodb更实用,安全,更稳定,但比MyISAM的效率低,但有些功能不修改MySQL引擎MyISAM。InnoDB,而且可以使用外…

如何添加旁路PPT2010制作PPT2010制

如何添加旁路PPT2010制作PPT2010制

旁路,制作教程,电脑软件,有时我们需要在PPT文件幻灯片添加一些画外音。我们如何添加画外音在PPT2010制作幻灯片让萧边告诉你如何添加画外音PPT2010制作。 PPT2010制作添加方式绕过: (1)选择需要记录旁白的幻灯片。在幻灯片放映,集选项卡,单击;…

如何恢复被删除的朋友的QQ技能恢复

如何恢复被删除的朋友的QQ技能恢复

删除,恢复删除,恢复,朋友,技能,在使用QQ的过程中,我们可能会因为粗心而删除一些朋友。如果我们想恢复它们,我们该怎么做让我们告诉你如何恢复删除的朋友。 恢复删除好友的方法: 打开QQ,点击QQ面板,点击我的QQ中心; 打开后,你进入QQ安全中心里面,…

金色的鱼碗效果包裹在创意PS图象处

金色的鱼碗效果包裹在创意PS图象处

创意,橘子,图象,包裹,处理软件,本文介绍了一种简单的创意合成效果,合成了一种橙色皮肤的金缸效果,这篇文章并不难,我相信大家都很容易做到。 设计素描 uff1a 写作过程如下: 最终效果 在教程的最后,以上是创意课程PS图象处理软件合成橘子皮包裹…

MySQL索引的主键索引

MySQL索引的主键索引

索引,主键,电脑软件,MySQL,MySQL中的主键索引和辅助索引的含义是什么有什么区别 上一次,我们介绍了聚合索引和非聚集索引之间的区别。这一次我们继续介绍主键索引和辅助索引之间的区别。 1。主要的关键指标 主键索引,称为主键,是主键,由一个…

PS图象处理软件精致可爱的水晶瓢虫

PS图象处理软件精致可爱的水晶瓢虫

瓢虫,图象,处理软件,精致,水晶,本教程主要介绍的方法和步骤,绘制风格与PS图象处理软件水晶瓢虫。晶体结构越来越频繁地出现在当前的设计作品中经常使用的按钮或标志的影响。 设计素描 uff1a 在PS图象处理软件,是建立一个新的形象,和大小设置…

PS图象处理软件明确和浪漫的海景婚

PS图象处理软件明确和浪漫的海景婚

海景,图象,处理软件,婚纱,浪漫,本教程介绍了国外电影的着色方法,原始的图片,图片可能不是很好,整个光线不足,和天上的云看起来暗,作者处理的颜色很好,不仅提高了照片的清晰度和色彩,而且还增加了一些装饰性的元素,而且效果很好。原 最终效果 1,打…

ps制作了一个逼真的墙字体。

ps制作了一个逼真的墙字体。

字体,逼真,电脑软件,ps,这段时间主要说明ps如何制作一个现实的墙字体方法。教程生成的字体非常逼真。建议像这样的朋友可以参考这篇文章。 步 首先,我们准备一幅画墙。 然后再复制一个图层 然后通过过滤器选择高对比度。 然后通过一个混合…