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);