首页 常见问题 并发操作带来数据不一致性包括哪三类?

并发操作带来数据不一致性包括哪三类?

Sep 02, 2020 pm 01:20 PM
数据不一致

并发操作带来数据不一致性包括:丢失修改、不可重复读、读“脏”数据。产生这三种现象的原因是并发操作破坏了事务的隔离性。为了应对这些数据不一致性,主要技术主要有:封锁,时间戳,乐观控制法。

并发操作带来数据不一致性包括哪三类?

并发操作会带来哪些数据不一致性 ( )

A.丢失修改、不可重复读、脏读、死锁

B.不可重复读、脏读、死锁

C.丢失修改、脏读、死锁

D.丢失修改、不可重复读、脏读

正确答案:D

答案解析:

事务是并发控制的基本单位,保证事务的ACID特性是事务处理的重要任务,而事务ACID特性可能遭到破坏的原因之一就是多个事务对数据库的并发操作造成的。

并发操作带来的数据不一致性重要有丢失修改,不可重复读,读“脏”数据。

1、丢失修改

两个事务T1和T2读入同一个数据并修改,T2提交的结果破坏了T1提交的结果,导致了T1的修改被丢失。典型例子:买飞机票或者火车票的例子。

2、不可重复读

不可重复读指的是事务T1读取数据后,事务T2执行更新操作,使T1无法再现前一次读取的结果。

分为以下三种情况:

(1)事务T1读取了某一数据后,事务T2对其做了修改,当事务T1再次读数据时,得到了与前一次不同的值。

(2)事务T1读取了某一数据后,事务T2删除了其中的记录,当事务T1再次读数据时,发现某些记录神秘消失了。

(3)事务T1读取了某一数据后,事务T2插入了一些新的记录,当事务T1再次读数据时,发现多了一些记录。

后两种操作叫做幻影现象。

3、读“脏”数据

读“脏”数据只得是事务T1修改了某一数据,并将其写回磁盘,事务T2读取某一数据后,T1由于某种原因撤销了操作,恢复原值,这时T2读到的数据就和数据库中的数据不一致,称为读“脏”数据。

产生以上三种现象的原因是并发操作破坏了事务的隔离性。为了应对这些数据不一致性,主要技术主要有:封锁,时间戳,乐观控制法。

更多相关知识,请访问:PHP中文网

以上是并发操作带来数据不一致性包括哪三类?的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
威尔R.E.P.O.有交叉游戏吗?
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)