ホームページ >データベース >mysql チュートリアル >PHP の PDO で最終的なパラメータ化された SQL クエリを取得できますか?

PHP の PDO で最終的なパラメータ化された SQL クエリを取得できますか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-30 09:42:13916ブラウズ

Can We Retrieve the Final Parametrized SQL Query in PHP's PDO?

PHP の PDO を使用してパラメータ化された SQL クエリを監視する方法

PHP では、PDO によりパラメータ化されたクエリが有効になり、SQL ステートメント内のトークンを実際の値に置き換えることで、 SQLインジェクション。ただし、パラメータ化された最終クエリを取得するのは難しい場合があります。

最終クエリを取得できますか?

残念ながら、答えはノーです。クエリとパラメータはデータベースに別々に送信されるため、完全な SQL クエリは PHP 側に存在しません。

回避策: SQL クエリのログ記録

1 つの解決策は次のとおりです。 SQL クエリをログに記録します。これにより、サーバー上で実際に実行される内容を監視できるようになります。 MySQL では、これを行うには、my.cnf (または my.ini) ファイルを変更し、次のログ ステートメントを追加します。

log=[REPLACE_BY_PATH]/[REPLACE_BY_FILE_NAME]

注: この回避策は、次の場合には使用しないでください。セキュリティとパフォーマンス上の懸念により実稼働環境にアクセスできません。

以上がPHP の PDO で最終的なパラメータ化された SQL クエリを取得できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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