Symfony2和DQL
我正在运行以下DQL语句:Symfony2和DQL,symfony,doctrine,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
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
有人知道我做错了什么吗?显然
Bundle:table
不是对项目中的Bundle和实体的正确引用。检查捆绑包/实体(或实体?)名称的拼写和大小写。您不能像这样使用变量替换。试试这个:
return $this->getEntityManager()
->createQuery("SELECT s FROM Bundle:table s WHERE s.title LIKE :search")
->setParameter('search', "%" . $search . "%")
->getResult();
是的,我意识到在调试时,它正在剥离
%
。谢谢你的帮助。