ホームページ >データベース >mysql チュートリアル >PHP で PDO パラメータ化クエリを使用する場合、最終的に実行された SQL クエリを確認するにはどうすればよいですか?

PHP で PDO パラメータ化クエリを使用する場合、最終的に実行された SQL クエリを確認するにはどうすればよいですか?

DDD
DDDオリジナル
2024-11-29 14:31:11957ブラウズ

How Can I Check the Final Executed SQL Query When Using PDO Parameterized Queries in PHP?

PHP で PDO を使用した最終的なパラメーター化されたクエリの確認

PHP で PDO を使用して MySQL データベースに接続する場合、場合によっては次のことが必要になります。実行される最終的な SQL クエリを確認します。元の質問は、「データベースによって実際に実行されるものを確認する方法はありますか?」

短い答え: いいえ

回答で指摘されているように、 PHP 側で最終クエリを取得する簡単な方法はありません。その理由は、パラメータ化されたクエリが、クエリ自体 (トークンを含む) と対応するパラメータという別々の部分でデータベースに送信されるためです。最終的なクエリはデータベース側でのみアセンブルされ、実行されます。

回避策: クエリのログ

最終的なクエリを直接取得することはできませんが、回避策は可能です。クエリログを使用して実装されます。 my.cnf (または my.ini) 構成ファイルを変更して次の行を含めると、

log=[REPLACE_BY_PATH]/[REPLACE_BY_FILE_NAME]

サーバー上で実行されたすべての SQL クエリが指定されたファイルに記録されます。これはデバッグ目的のみに使用し、運用環境では使用しないでください。

以上がPHP で PDO パラメータ化クエリを使用する場合、最終的に実行された SQL クエリを確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。