-
事务的隔离级别
- 脏读:A事务访问数据并修改,但是没有提交到数据库,B事务就读取到了这个数据。产生原因:数据读取
- 不可重复读:事务B读取了两次数据,在这中间,事务A修改了数据,导致两次读取出来的数据不一致。产生原因:数据的修改
- 幻读:B事务读取两次数据,在这两次的读取过程中A事务添加了数据,B事务两次读取出来的集合不一样。跟不可重复读很类似,但是幻读强调集合的增减,而不是一条数据的修改。产生原因数据的插入删除
名称 结果 脏读 不可重复读 幻读 Read UnCommitted(读未提交) √ √ √ Read Committed(读提交) 解决脏读 × √ √ Repeatable Read(重复读) (mysql默认级别),解决不可重复读 × × √ Serializable(序列化) 解决所有问题 × × × -
事务传播行为