★ MYSQL隔离级别 通俗理解 + mysql、oracle默认事务隔离级别
★ 脏读 : 读取了前一事务 未提交 的数据 ; 不可重复读 : 读取了前一事务 提交 的数据; ★ 幻读 与 不可重复读 common :都是读取了另一条已经提交的事务(这点与脏读不同); differences : 不可重复读 :查询的都是同一个数据项 幻读 :针对的是一批数据整体(比如数据的个数) 不可重复读eg: < 当隔离级别设置为Repeatable read 时,可以避免不可重复读 > eg2: 在事务A中,读取到张三的工资为5000,操作没有完成,事务还没提交。 与此同时,事务B把张三的工资改为8000,并提交了事务。 随后,在事务A中,再次读取张三的工资,此时工资变为8000。在一个事务中前后两次读取的结果并不致,导致了不可重复读。(大部分数据库缺省的事物隔离级别都不会出现这种状况) 幻读eg: eg1: 目前工资为5000的员工有10人,事务A读取所有工资为5000的人数为10人。 此时,事务B插入一条工资也为5000的记录,并且commit了。 这时,事务A再次读取工资为5000的员工,记录为11人。此时产生了幻读。 (大部分数据库缺省的事物隔离级别都会出现这种状况,此种事物隔离级别将带来表级锁) eg2: