Symfony2中的“[语法错误]:预期的Doctrine \ ORM \ Query \ Lexer :: T_AND,得到'00'”错误是什么意思?

时间:2015-07-16 19:55:10

标签: symfony orm doctrine-orm

我正在尝试创建查询:

$od = '2015-04-13 00:00:00';
$do = '2015-05-01 00:00:00';
$query = 'date BETWEEN '.$od.' AND '.$do;

并收到错误:

[Syntax Error] line 0, col 111: Error: Expected Doctrine\ORM\Query\Lexer::T_AND, got '00'

Symfony2调试日志:

QueryException: SELECT z 
FROM AppBundle:Zamowienie z 
WHERE z.datazlozenia BETWEEN 2015-04-13 00:00:00 AND 2015-05-01 00:00:00 
ORDER BY z.idzamowienie ASC

怎么了?

1 个答案:

答案 0 :(得分:1)

您需要将日期置于引号之下,以提供正确的查询语法:

statuses/oembed

更好地研究使用预准备语句并替换查询参数而不是连接查询,因为它往往会打开SQL注入攻击。