ホームページ >データベース >mysql チュートリアル >Doctrine でプリペアド ステートメントが使用されている場合、「実際の」 SQL クエリを確認するにはどうすればよいですか?
Doctrine を使用して次のようなクエリを綿密に作成したとします。
$q = Doctrine_Query::create()->select('id')->from('MyTable');
次に、次のような条件を使用してクエリを微調整するとき、
$q->where('normalisedname = ? OR name = ?', array($string, $originalString));
実行前に生の SQL を調べたいと思います。そこで、次のように呼び出します。
$q->getSQLQuery();
しかし、残念ながら、これは期待したものではなく、疑問符が付いている準備されたステートメントです。データベースに何が送信されるかを確認したいとします。
これが真実です: Doctrine は「実際の」SQL をデータベース サーバーに送信しません。これは、準備されたステートメントを使用する 3 段階のプロセスです:
これは、PHP 側に「実際の」SQL クエリが存在しないことを意味します。そのため、Doctrine はそれを表示できません。
以上がDoctrine でプリペアド ステートメントが使用されている場合、「実際の」 SQL クエリを確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。