doctrine dbal querybuilder als vorbereitete Anweisung
Ich versuche, ein Doctrine DBAL-Abfrageerstellungsobjekt zu erstellen und einen Parameter darin festzulegen. (unter Verwendung einer postgres db, dbal 2.3.4, doctrine
$connection = $this->_em->getConnection();
$qb = $connection->createQueryBuilder();
$qb->select('tbl_user_contract.pkid AS pkid');
$qb->from('tbl_user_contract', 'tbl_user_contract');
$qb->join('tbl_user_contract', 'tbl_user', 'tbl_user', 'tbl_user_contract.fk_user = tbl_user.pkid');
$qb->where('tbl_user.pkid = :userid');
$qb->setParameter(':userid', 10);
Wenn ich versuche, die Ergebnisse dieses Querybuilder-Objekts abzurufen, wird die folgende Fehlermeldung angezeigt:
SQLSTATE[08P01]: <<Unknown error>>: 7 ERROR: bind message supplies 0 parameters,
but prepared statement "pdo_stmt_00000002" requires 1
Wenn ich die Postgres-Protokolle überprüfe, sehe ich, dass die Abfrage vorbeigeht, und ich bemerke, dass sie einen Parameter erwartet, aber ich werde keinen Parameter übergeben bekommen.
Ich habe versucht, die ID im where-Ausdruck selbst zu setzen (ohne vorbereitete Anweisungen zu verwenden), das hat funktioniert. Aber ich möchte wirklich, dass dies mit vorbereiteten Aussagen funktioniert.
Weiß jemand, wie man das löst?
Danke im Voraus