脏读、不可重复读与幻读和spring事务传播方式
2017-08-05 11:13
405 查看
脏读、不可重复读和幻读是数据库事务可能出现的问题,理解和解决这三类问题应该结合数据库事务隔离级别来学习和分析。
数据库事务的隔离级别有4个,由低到高依次为Read
uncommitted、Read committed、Repeatable
read、Serializable
√: 可能出现 ×: 不会出现
脏读:是指一个事务读取到了另一个事务未提交的数据。
不可重复读:指一个事务读取时另一个事务可以修改数据。
幻读:一个事务读取时另一个事务insert操作。
这三类问题的解决方式就是依次提高数据库的事务隔离级别。
另外,一组相关概念:spring七种事务传播方式。
spring事务的七种传播方式主要是针对于方法中间传递时的事务机制,
例如:以方法B为当前主体 ,方法A调用了方法B ,作为方法B你看方法A
(1)PROPAGATION_REQUIRED(默认):如果A有事务则B加入A事务,如果A没有事务则新B建一个事务;
数据库事务的隔离级别有4个,由低到高依次为Read
uncommitted、Read committed、Repeatable
read、Serializable
√: 可能出现 ×: 不会出现
脏读 | 不可重复读 | 幻读 | |
Read uncommitted | √ | √ | √ |
Read committed | × | √ | √ |
Repeatable read | × | × | √ |
Serializable | × | × | × |
不可重复读:指一个事务读取时另一个事务可以修改数据。
幻读:一个事务读取时另一个事务insert操作。
这三类问题的解决方式就是依次提高数据库的事务隔离级别。
另外,一组相关概念:spring七种事务传播方式。
spring事务的七种传播方式主要是针对于方法中间传递时的事务机制,
例如:以方法B为当前主体 ,方法A调用了方法B ,作为方法B你看方法A
(1)PROPAGATION_REQUIRED(默认):如果A有事务则B加入A事务,如果A没有事务则新B建一个事务;
相关文章推荐
- Spring事务配置的五种方式和spring里面事务的传播属性和事务隔离级别、不可重复读与幻读的区别
- spring 事务特征、事务传播特征、事务隔离级别、 脏读、不可重复读、 幻觉读
- 了解spring事务七种传播方式、事务的4种隔离级别、脏读、重复读、幻读;
- Spring事务配置的五种方式和spring里面事务的传播属性和事务隔离级别
- Spring注解方式管理事务与传播行为
- 使用Spring注解方式管理事务与传播行为详解
- Spring事务配置的五种方式和spring里面事务的传播属性和事务隔离级别
- Spring事务配置的五种方式和spring里面事务的传播属性和事务隔离级别
- 数据库并发事务存在的问题(脏读、不可重复读、幻读等)
- 数据库事务隔离级别,脏读、不可重复读、幻读
- 脏读、幻读、不可重复读 and 乐观锁、悲观锁 and 事务五种隔离级别
- Spring事务配置的五种方式和spring里面事务的传播属性和事务隔离级别
- Spring事务配置的五种方式和spring里面事务的传播属性和事务隔离级别
- Spring事务配置的五种方式和spring里面事务的传播属性和事务隔离级别
- 数据库事务隔离级别-- 脏读、幻读、不可重复读(清晰解释)
- Spring事务配置的五种方式和spring里面事务的传播属性和事务隔离级别
- 脏读、幻读、不可重复读 and 乐观锁、悲观锁 and 事务五种隔离级别
- spring整合hibernate事务管理的四种方式,以及事务的传播行为和隔离级别介绍
- Spring事务配置的五种方式和spring里面事务的传播属性和事务隔离级别
- Spring事务配置的五种方式和spring里面事务的传播属性和事务隔离级别