幻读:
假设现在有两个事务,T1和T2.
T1先进行一次查询,T1查询后,T2插入了一条数据并提交,而这条数据满足T1查询的条件,接着T1再次执行之前的查询,但此时看到的结果与之前不同.这种现象被称为幻读.
不可重复读:
假设现在有两个事务,T1和T2.
T1已经读取了一条数据的一个值,而此时T2修改了一条数据并提交成功,然后T1所读取到的数据就变成了被更新的值.这就是不可重复读.
脏读:
假设现在有两个事务,T1和T2.
T2更新了一条数据但还没有提交,但这条数据被T1读取到了,然后T2回滚操作,取消了刚才的操作,先前T1所读取到的数据就无效了.这种现象被称为脏读.
隔离级别:
Read Uncommitted:读未提交
Read Commmitted:读提交
Repeatable read:重复读
Serializable:序列化
注:Oracle数据库只支持Read Commmitted和Serializable两种事务隔离级别.