我有以下doctrine dql查询,我看不出它与手册有很大不同,但我收到以下错误:
致命错误:未捕获的异常' Doctrine \ ORM \ Query \ QueryException' with message' SELECT s FROM \ SessionStorage s WHERE id =?1 AND expireAt> NOW()'
$dql = "SELECT s FROM SessionStorage s WHERE id= ?1 AND expireAt > NOW()";
$sessionstorage = $this->em->createQuery($dql)
->setParameter(1,$this->cookieManager->getCookie('session')->getValue())
->getResult();
我已经尝试从setparameter中分离createQuery但是它在creatQuery上失败了,但是它没有给出任何错误的线索。根据它应该工作的文档,它非常简单的基本代码,如果我把它作为普通的pdo请求,它就可以工作。
我尝试了什么?我尝试过使用\ SessionStorage,Entities \ Sessionstorage,src \ SessionStorage。
尝试删除expireAt> NOW()
更改了var? to:id
在SessionStorage s
我已经用谷歌搜索了但是我发现这个错误的是很多破碎的网站。
由于学说文档杂乱无章,并且不清楚,因为它不能解释为什么我不知道这个真正非常简单的查询有什么问题。
有人可以告诉我这个查询有什么问题吗?我真的不明白为什么这么简单的查询会出现这样的错误。
答案 0 :(得分:1)
使用CURRENT_TIMESTAMP()或CURRENT_DATE()代替NOW()。