sql - 具有多个参数的 createQueryBuilder 和 setParameter?

标签 sql symfony

我一直在尝试创建此 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() 的正确方法吗? ?

An exception occurred while executing 'SELECT t0_.points AS points_0 FROM tef t0_ WHERE t0_.epreuve = ? AND t0_.resultat = ?' with params ["CE", "B1"]:

SQLSTATE[HY093]: Invalid parameter number: Columns/Parameters are 1-based

最佳答案

做这个

->setParameters(array('param1'=> $param1, 'param2' => $param2))
文档 https://www.doctrine-project.org/projects/doctrine-orm/en/2.7/reference/query-builder.html#binding-parameters-to-your-query

关于sql - 具有多个参数的 createQueryBuilder 和 setParameter?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36831832/

相关文章:

javascript - 为什么 Sequelize 发布 "SHOW INDEX FROM ` 表`"?

python插入mysql

php - Symfony - 以嵌套形式检索未映射的字段

symfony - 作为依赖项的 Sylius 产品包

symfony - FOS UserBundle - 覆盖 FormFactory

javascript - Symfony Ajax 请求错误 500

php - 如何使用 Twig 变量作为表单字段名称

Mysql replace() 函数,帮助查询(我要转义哪些字符?)

sql - 如何计算一段时间内每月的记录数

c# - 在 NHibernate 中动态更改查询类型