Symfony2和DQL

时间:2012-07-18 01:34:32

标签: symfony doctrine

我正在运行这个DQL语句:

return $this->getEntityManager()
    ->createQuery("SELECT s FROM Bundle:table s WHERE s.title LIKE '%:search%'")
    ->setParameter('search', $search)
    ->getResult();

但是我收到了这个错误:

Invalid parameter number: number of bound variables does not match number of tokens

任何人都知道我做错了什么?

2 个答案:

答案 0 :(得分:1)

你不能像这样使用变量替换。试试这个:

return $this->getEntityManager()
    ->createQuery("SELECT s FROM Bundle:table s WHERE s.title LIKE :search")
    ->setParameter('search', "%" . $search . "%")
    ->getResult();

答案 1 :(得分:0)

显然Bundle:table不是对项目中的包和实体的正确引用。检查Bundle / entity(或Entity?)名称的拼写和camelCase。

相关问题