我正在运行这个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
任何人都知道我做错了什么?
答案 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。