哪些数据库隔离级别能防止脏读
数据库隔离级别中的Read committed、Serializable和Repeatable read都能防止脏读。
Read committed(读取已提交)的隔离级别允许读取并发事务已经提交的数据,这样可以阻止脏读,但是幻读或不可重复读仍有可能发生。
Serializable(可串行化)是最高的隔离级别,完全服从ACID的隔离级别,所有事务依次逐个执行,这样事务之间就完全不可能产生干扰,也就是说,该级别可以防止脏读、不可重复读以及幻读。
Repeatable read(可重复读)是对同一字段的多次读取结果都是一致的,除非数据是被本身事务自己所修改,这样可以阻止脏读和不可重复读,但幻读仍有可能发生。