脏读和不可重读之间有什么区别?

时间:2017-03-11 20:07:05

标签: sql transactions rdms

在从维基百科阅读事务隔离级别时,我对“脏读”和“不可重复读取”的隔离现象感到困惑。两者都意味着如果t1选择一些数据,t2修改相同的数据,然后t1再次读取数据,t1将看到修改的数据。那有什么不同呢?

1 个答案:

答案 0 :(得分:1)

  • 脏读:当您看到 uncommited 更改
  • 不可重复读取:当您多次执行相同查询时看到已提交更改

第一个是邪恶的,在大多数情况下应该避免,因为你可能会看到行处于不一致的中间状态,而第二个可以用于许多应用程序