Я хочу перефразировать нативный SQL-запрос с помощью doctrine querybuilder.
В этом случае я получаю следующую ошибку:
Запрос выполняется и возвращает результат (с объединениями и без).
Но когда я добавляю простой WHERE
, базовые значения сущности равны NULL
.
Протестировано
- QueryBuilder (сложный: по умолчанию мне нужно шесть объединений)
- QueryBuilder (просто: без объединения)
- HQL
- разные getResult()
и execute()
звонки
Версия:
PHP 7.0 (обновления невозможны ...)
./composer.phar info | grep doctrine
doctrine/annotations v1.4.0 Docblock Annotations Parser
doctrine/cache v1.6.2 Caching library offering an object-oriented API for many cache backends
doctrine/collections v1.4.0 Collections Abstraction library
doctrine/common v2.7.3 Common Library for Doctrine projects
doctrine/dbal v2.5.13 Database Abstraction Layer
doctrine/doctrine-bundle 1.10.3 Symfony DoctrineBundle
doctrine/doctrine-cache-bundle 1.3.5 Symfony Bundle for Doctrine Cache
doctrine/inflector v1.2.0 Common String Manipulations with regard to casing and singular/plural rules.
doctrine/instantiator 1.0.5 A small, lightweight utility to instantiate objects in PHP without invoking their cons...
doctrine/lexer 1.0.2 PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Pars...
doctrine/orm v2.5.14 Object-Relational-Mapper for PHP
Какой-то код
Базовые значения заполнены (например, id
и title
).
$qb = $this->createQueryBuilder('artikel')
;
return $qb->getQuery()->execute();
Основные значения null
, за исключением id
.
$qb = $this->createQueryBuilder('artikel')
->andWhere('artikel.id = :ids')
->setParameter('ids', '1010729320')
;
return $qb->getQuery()->execute();
Почему базовое значение null
при использовании предложения WHERE
?