После внесения изменений в мою базу данных я должен удалить некоторые связанные записи в другой таблице.
Я сделал пользовательский запрос в своем репозитории:
public function removeOptionGc(VarianteEscalier $varianteEscalier) {
$em=$this->getEntityManager();
return $em->createQueryBuilder()
->delete(VarianteEscalierOptGc::class, "vogc")
->join("vogc.gardecorpsOption", "gco")
->where("vogc.varianteEscalier=:VARIANTE")
->andWhere("gco.type='option_gc_rampant' OR gco.type='option_gc_etage' OR gco.type='autres'")
->setParameters(array('VARIANTE'=>$varianteEscalier))
->getQuery()
->getResult();
}
Когда я его выполню, я получу следующую ошибку:
[Семантическая ошибка] строка 0, столбец 94 рядом с 'gco.type =' option_gc_rampant '': Ошибка: 'gco' не определено.
Это DQL, который я получаю из этого запроса:
DELETE AppBundle\Entity\VarianteEscalierOptGc vogc WHERE vogc.varianteEscalier=:VARIANTE AND (gco.type='option_gc_rampant' OR gco.type='option_gc_etage' OR gco.type='autres')
Любая идея о том, почему join
игнорируется, когда я пытаюсь delete
?