簡體   English   中英

錯誤:預期文字,在 Doctrine 中得到“*”

[英]Error: Expected Literal, got '*' in Doctrine

我想檢索我的 courier 表中的行數。

在我的裝置中,我有以下幾行:

$query = $this->em->createQuery('SELECT count(*) FROM App\Entity\Courrier');
$countCourrier = $query->getResult();

當我執行symfony console doctrine:fixtures:load時,我遇到了這些錯誤symfony console doctrine:fixtures:load

In QueryException.php line 38:
                                                               
[Syntax Error] line 0, col 13: Error: Expected Literal, got '*'  
                                                               

In QueryException.php line 27:
                                        
SELECT count(*) FROM App\Entity\Courrier  
                                       

我的查詢中的 * 有什么問題?

Doctrine 希望您使用實體的字段之一。 在 SQL 中,您不需要使用count(*)來獲取行count(id)也可以使用,只要該列不可為空。

因此,將您的查詢更改為SELECT count(c.id) FROM App\\Entity\\Courrier as c應該可以解決這個問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM