我一直在尝试创建此SQL查询,并且第二个参数一直出错。

也许我在这里错过了一些东西。

这是我的要求:

$pointsTEF = $this->getDoctrine()->getManager();
                $pointsTEFs = $pointsTEF->createQueryBuilder('t')
                ->select('t.points')
                ->from('AppBundle:Tef', 't')
                ->where('t.epreuve = :epreuve')
                ->setParameter('epreuve',$valeur)
                ->andWhere('t.resultat = :resultat')
                ->setParameter('resultat',$valeurEpreuve)
                ->getQuery()
                ->getResult();


这是使用setParameter()的正确方法吗? ?


执行'SELECT t0_.points AS points_0时发生异常
从tef t0_到t0_.epreuve =? AND t0_.resultat =?'带参数
[“ CE”,“ B1”]:

SQLSTATE [HY093]:无效的参数号:列/参数为
从1开始

最佳答案

做这个

->setParameters(array('param1'=> $param1, 'param2' => $param2))


文档http://doctrine-orm.readthedocs.org/projects/doctrine-orm/en/latest/reference/query-builder.html#binding-parameters-to-your-query

07-25 22:57