【发布时间】:2016-08-04 15:01:28
【问题描述】:
我们使用 Doctrine 作为 ORM,框架 ZF1 和 ZF2,以及数据库 MySql。我知道innodb 引擎的默认隔离级别是Repeatable Read。由于我使用Doctrine 作为 ORM,默认的isolation level 是什么?在这个document 中声明如下:
Doctrine\DBAL\Connection 的默认事务隔离级别由底层平台选择,但始终至少为 READ_COMMITTED。
让我更困惑的是另一篇来自教义本身的文章。我这个document 声明如下:
这可能会导致不可预知的结果,因为显式 WITH (NOLOCK) 表提示会告诉 SQL Server 在事务隔离级别 READ UNCOMMITTED 而不是 默认的 READ COMMITTED 事务隔离级别中运行特定查询。因此,现在 LockMode::NONE 和 null 之间存在区别,以便能够告诉 Doctrine 是否有意为查询添加表锁定提示。
谁能解释一下 Doctrine 的默认隔离级别是多少?
【问题讨论】:
标签: mysql zend-framework doctrine-orm zend-framework2 isolation-level