[list]
[*]可重复读
[/list]
在当前事务中多次读取到的数据集是相同的。无论多次读取中其他事务进行了什么操作(事实上,其他事务无法修改当前事务读取到的数据集)。其他事务不能修改当前事务锁住的多行,修改、删除都不可以。但是可以对表的其他行进行操作,包括修改、删除、插入和查询。
所以,一旦其他事务对表进行插入操作,当前事务再次读取时,会发现多出一条记录,这叫幻读。
[list]
[*]序列化
[/list]
在当前事务中多次读取到的整个表是不变的,即其他事务无法访问和修改该表。读取、修改、插入和删除都不可以。
暂时的理解,可能不对
[*]可重复读
[/list]
在当前事务中多次读取到的数据集是相同的。无论多次读取中其他事务进行了什么操作(事实上,其他事务无法修改当前事务读取到的数据集)。其他事务不能修改当前事务锁住的多行,修改、删除都不可以。但是可以对表的其他行进行操作,包括修改、删除、插入和查询。
所以,一旦其他事务对表进行插入操作,当前事务再次读取时,会发现多出一条记录,这叫幻读。
[list]
[*]序列化
[/list]
在当前事务中多次读取到的整个表是不变的,即其他事务无法访问和修改该表。读取、修改、插入和删除都不可以。
暂时的理解,可能不对

本文详细解释了数据库事务的两种隔离级别:可重复读与序列化。介绍了可重复读如何确保同一事务内多次读取相同数据集,以及序列化如何保持整个表在事务期间不变。同时讨论了幻读的概念及不同隔离级别下对数据一致性和完整性的保护。
6540

被折叠的 条评论
为什么被折叠?



