ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

事务-update操作一点观察

2022-08-03 16:02:58  阅读:167  来源: 互联网

标签:事务 隔离 记录 update 回滚 提交 观察 级别


目录

隔离级别为读已提交

如果数据库的隔离级别是读已提交(Read Committed),这是很多数据库默认的隔离级别。在这种情况下:如果事务要更新一条记录,而这条记录恰好被另一个运行中但未提交事务更改(被锁定或删除),则当前事务会阻塞,等待直到另一个事务提交或回滚后,再继续处理(First Updater Win Rule)。

如果另一个事务回滚了,那么当前事务可以继续执行,更新这条记录。

如果另一个事务提交了,要分两种情形。第一种,要是这条记录被删除了,那么忽略这条记录;第二种,这条记录被更新了,需要重新判断这条记录是否满足谓词条件(where语句),满足则更新,不满足则忽略这条记录。

隔离级别为可重复读

如果数据库的隔离级别是可重复读,事务只能看到事务开始前已提交的数据。所以,对于并发的更新操作,与读已提交是类似的。如果事务更新同一条记录,当前事务会阻塞直到另一个并发写的事务结束。如果另一个事务回滚,那么当前事务继续执行,更新这条记录。如果另一个事务提交了,当前事务会回滚,这里的处理与读已提交不同。

标签:事务,隔离,记录,update,回滚,提交,观察,级别
来源: https://www.cnblogs.com/henuqin/p/16547440.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有