代码之家  ›  专栏  ›  技术社区  ›  Igor Serebryany

mysql隔离级别

  •  1
  • Igor Serebryany  · 技术社区  · 17 年前

    我对这里的文档有点困惑。我有一笔交易

    1. 有一些选择吗
    2. 有更多的更新吗
    3. 犯罪

    我希望我的选择是同步的 3. 要查看步骤中的更新结果,请执行以下操作: 2. 但我想把整个事情都往后推。

    阅读承诺 似乎暗示选择只显示已提交的数据,并且 似乎暗示所有后续选择将看到与第一次选择时相同的数据-因此忽略我的更新。 似乎这样做是正确的,但是:“但是可能会使用行的早期版本”——这也是不可接受的,因为我的选择必须看到我的更新结果。

    可序列化

    我正在整理文件 here

    1 回复  |  直到 17 年前
        1
  •  2
  •   Henning    17 年前

    事务隔离级别仅描述 同时发生的 在同一交易中 将在您从该事务中重新选择时更新。

    在您的案例中,正确的隔离级别似乎是read committed,因此您可以在任何时候回滚,而未受限制的数据在其他事务中不可见。