【问题标题】:Syntax Error: line 0, col 81: Error: Expected Literal, got 'NULL'语法错误:第 0 行,第 81 列:错误:预期文字,得到 'NULL'
【发布时间】:2014-03-03 14:14:24
【问题描述】:

当我尝试通过查询生成器执行查询时出现错误[Syntax Error] line 0, col 81: Error: Expected Literal, got 'NULL'

        $qb = $this->createQueryBuilder('r')
            ->select('r')
            ->where('r.query = :query')
            ->setParameter('query', $query)   
            ->andWhere('r.lang = NULL')
        ;

        return $qb->getQuery()->getOneOrNullResult();

r.lang字段定义为:

/**
 * @var integer
 *
 * @ORM\ManyToOne(targetEntity="\BW\LocalizationBundle\Entity\Lang")
 * @ORM\JoinColumn(name="lang_id", referencedColumnName="id")
 */
private $lang;

请帮忙解决错误

【问题讨论】:

    标签: symfony doctrine-orm query-builder


    【解决方案1】:

    当您检查 NULL 值时,表达式应该是

    ->andWhere('r.lang IS NULL')
    

    【讨论】:

      猜你喜欢
      • 2017-12-08
      • 2016-11-09
      • 1970-01-01
      • 2018-12-18
      • 2019-12-20
      • 2021-07-23
      • 1970-01-01
      • 2019-01-24
      • 1970-01-01
      相关资源
      最近更新 更多