ホームページ >データベース >mysql チュートリアル >SQLAlchemy 式から生のコンパイル済み SQL クエリを取得するにはどうすればよいですか?

SQLAlchemy 式から生のコンパイル済み SQL クエリを取得するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-07 10:46:41280ブラウズ

How Can I Retrieve the Raw, Compiled SQL Query from a SQLAlchemy Expression?

SQLAlchemy 式から生のコンパイル済み SQL クエリを取得する

SQLAlchemy のクエリ インターフェイスは、データベース クエリを構築するための強力な抽象化を提供します。ただし、基礎となる SQL ステートメントにアクセスするのは困難な場合があります。バインドされたパラメーターを使用して生のコンパイル済み SQL クエリを取得するには、次のオプションを検討してください。

literal_binds 引数を使用する

ドキュメントでは、literal_binds を使用することを推奨しています。クエリ q を出力するにはパラメータ:

print(q.statement.compile(compile_kwargs={"literal_binds": True}))

注意事項

  • このアプローチは、整数や文字列などの基本的な型に対してのみサポートされます。
  • If bindParam() はプリセット値なしで使用されており、それに変換することはできませんstring.

ドキュメントの警告

ドキュメントでは、Web フォームなどの信頼できないソースからのデータに対してこのメ​​ソッドを使用しないように警告しています。 Python 値を SQL 文字列値に変換する SQLAlchemy のメカニズムは、信頼できないデータを安全に処理せず、渡されるデータのタイプをチェックしません。

以上がSQLAlchemy 式から生のコンパイル済み SQL クエリを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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