脏读(Dirty read)
在一个事务中读取到另一个事务已经修改但没有提交的数据。例如,事务A对数据进行了修改,但是还没有提交,这时事务B读取这个数据,然后事务A回滚,那么事务B取的数据无效。不符合一致性。
不可重复读(NonRepeatable Read)
既不能读到相同的数据内容,事务A读取到了事务B已经提交的修改数据(一个事务范围内两个相同的查询却返回了不同数据)。例如事务A先读取数据,然后事务B对该同一数据修改并提交,那么事务A再次读取该数据时,由于事务B对该数据的修改,事务A两次读到的的数据可能是不一样的。不符合隔离性。
幻读(Phantom Read)
事务A读取到了事务B已经提交的新增数据。在一个事务中,两次查询的结果不一致(针对的insert操作) 。例如事务A对一个表中的数据进行了修改,同时,事务B也修改这个表中的数据,这种修改是向表中插入一行新数据。那么,事务A的用户后面的操作发现表中还有没有修改的数据行,就好象发生了幻觉一样。不符合隔离性。
更新丢失(Update lose)
两个事务同时操作相同数据,后提交的事务会覆盖先提交的事务处理结果。通过乐观锁就可以解决。
标签: 事务、提交、表中、修改、读取
笔试题
刷题
简历模板
AI算法
大数据
内推