0

アクション コントローラーでこのクエリを実行しようとすると、ブラウザー ページがフリーズします。

$query = $em->createQuery('SELECT c FROM Baza\BlogBundle\Entity\Conferences c WHERE c.locationid= ?1');
            $query->setParameter(1, 5);
            $id = $query->getResult();

しかし、次のような他のクエリを実行すると:

$query = $em->createQuery('SELECT c.title FROM Baza\BlogBundle\Entity\Conferences c WHERE c.locationid= ?1');
            $query->setParameter(1, 5);
            $id = $query->getResult();

すべてが整っているようです。唯一の違いは、最初のものでは、単一のフィールドだけでなく、オブジェクト全体を取得することです。

この問題は、このテーブルだけでなく、すべてのテーブルで発生しています。私は何をすべきか?

4

1 に答える 1

1

クエリがハングの原因である可能性はほとんどありませんが、結果をどう処理するかを検討してください。symfony オブジェクトを「印刷」している場合、すべての再帰のためにブラウザーがハングします。2 番目のクエリはタイトルのみを取得するため、オブジェクトは印刷されず、テキスト フィールドのみが取得されます。

簡単な修正は、最初のクエリの最後の行を変更することです。

 $id = ($query->getResult())->getTitle();

(または意味のある機能)。これで問題が解決しない場合は、さらにコードを確認する必要があります。

于 2013-01-07T18:46:34.837 に答える