2
我用悲观锁定了很多在我的应用程序,它使用实体管理器时正常工作:SELECT FOR UPDATE教义2 DQL
$em->find($class, $id, LockMode::PESSIMISTIC_WRITE);
使用MySQL时,这将导致SELECT FOR UPDATE
。
现在我需要使用相同的锁定,但对于使用DQL查询检索的实体。
是否可以在DQL中使用悲观锁定?
我用悲观锁定了很多在我的应用程序,它使用实体管理器时正常工作:SELECT FOR UPDATE教义2 DQL
$em->find($class, $id, LockMode::PESSIMISTIC_WRITE);
使用MySQL时,这将导致SELECT FOR UPDATE
。
现在我需要使用相同的锁定,但对于使用DQL查询检索的实体。
是否可以在DQL中使用悲观锁定?
找到的解决方案,使用Query::setLockMode():
$query = $this->em->createQuery('SELECT ...');
$query->setLockMode(LockMode::PESSIMISTIC_WRITE);