ホームページ > データベース > mysql チュートリアル > MySQLdb によって実行された実際のクエリを表示するにはどうすればよいですか?

MySQLdb によって実行された実際のクエリを表示するにはどうすればよいですか?

DDD
リリース: 2024-11-04 14:01:01
オリジナル
289 人が閲覧しました

How to View the Actual Query Executed by MySQLdb?

MySQLdb によって実行された実際のクエリを表示する方法

MySQLdb を使用して Python でデータベース クエリをデバッグする場合、正確なクエリを調べると役立つことがあります。実行中のクエリ、特にパラメータ化後のクエリ。これは、意図したクエリと実際の実行の間のエラーや不一致を特定するのに役立ちます。

実行されたクエリへのアクセス

MySQLdb バージョン 1.2.2 では、Cursor オブジェクトは、クエリ情報を取得するための明示的な Cursor.info() メソッドを提供しません。ただし、最後に実行されたクエリ文字列を保持するcursor._last_executedという属性があります。この属性は、クエリの実行中に例外が発生した場合でもアクセスできます。

使用例

この属性をデバッグ目的で利用するには、クエリの実行後に次のようにアクセスできます。

<code class="python">import MySQLdb

db = MySQLdb.connect(... )
cursor = db.cursor()

# Execute a query with parameters
query = "SELECT * FROM users WHERE name = %s"
cursor.execute(query, ("John", ))

# Print the actual query executed
print(cursor._last_executed)</code>
ログイン後にコピー

利点

cursor._last_executed を使用すると、プロファイリングや MySQL クエリ ロギングなどの他のデバッグ手法に比べていくつかの利点があります。

  • 運用環境での実装と使用がより簡単です。
  • パフォーマンスに重大な影響を与えません。
  • 追加の相関やログを必要とせずに、実行されたクエリに即座にアクセスできます。解析中。

以上がMySQLdb によって実行された実際のクエリを表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート