事务是否确保不会发生脏读?

时间:2018-06-07 17:42:39

标签: sqlite concurrency database-concurrency

我最近一直在阅读很多内容,现在我很困惑交易和锁定是如何工作以及如何相互关联的。

使用SQLite时,请想象以下流程:

  1. 开始SQLite事务
  2. 在SQLite连接上运行select语句以返回值
  3. 如果返回值满足条件,请转到步骤#4,否则转到步骤#5
  4. 进行更新
  5. 提交SQLite事务
  6. 如果两个线程运行相同的代码,是否有可能在其中一个线程中得到所谓的"脏读"意思是,在步骤#3和步骤#4之间,另一个线程可以运行更新(步骤#4)?

1 个答案:

答案 0 :(得分:0)

是的,它被称为隔离级别:https://www.sqlite.org/isolation.html