[英]doctrine querybuilder syntax error expected =, <, <=, <>, >, >=, !=, got end of string
[英]Doctrine Query Error for JOIN: Expected end of string, got 'I'
我的PHP代碼是:
$company = $qb->select("c")
->from("CRMBundle:TblCompanyDomain","cd")
->join("cd.company","c")
->leftJoin("CRMBundle:TblCompanyAddress",
"ca",
"WITH",
"ca.company = c")
->join("ca.country","cc")
->where($qb->expr()->andX(
$qb->expr()->in("cd.domain",":domain"),
$qb->expr()->eq("c.channel",":channel_id")
))
->setParameters($parameters)
->setMaxResults(1)
->getQuery()
->getOneOrNullResult();
最終收到的DQL代碼為:
SELECT
c
FROM
CRMBundle:TblCompanyDomain cd
INNER JOIN cd.company c
LEFT JOIN CRMBundle:TblCompanyAddress ca WITH ca.company = c
INNER JOIN ca.country cc
WHERE
cd.domain IN(:domain) AND
c.channel = :channel_id
當我執行此查詢時,我收到此錯誤:
[Syntax Error] line 0, col 44: Error: Expected end of string, got 'I'
enter code here
我看不到任何語法錯誤。 問題出在哪兒?
我的Symfony版本:2.6.11
我的學說版本:2.2
SELECT
c
FROM
CRMBundle:TblCompanyDomain cd
INNER JOIN cd.company c
LEFT JOIN CRMBundle:TblCompanyAddress ca WITH ca.company = c
INNER JOIN ca.country cc
WHERE
cd.domain IN(:domain) AND
c.channel = :channel_id
我認為你需要一些東西
我已將注釋從yml更改為yml,並將其映射到固定的問題。
我已經經歷過很多次相同的問題,並且了解真正的問題。 當我對Utf-8使用Doctrine注釋時,就會出現此問題。 可能是因為土耳其語為utf-8。 因為較低的“ı”字符的大寫字母是“ I”,較低的“ i”字符的大寫字母是“İ”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.