ホームページ >データベース >mysql チュートリアル >Flask-SQLAlchemy で生の SQL クエリを効果的に実行するにはどうすればよいですか?

Flask-SQLAlchemy で生の SQL クエリを効果的に実行するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2025-01-17 05:27:09857ブラウズ

How to Effectively Execute Raw SQL Queries in Flask-SQLAlchemy?

Flask-SQLAlchemy アプリケーションで生の SQL を実行する

Flask-SQLAlchemy では、SQLAlchemy ORM を使用して実現できない複雑なデータ操作を扱う場合、生の SQL クエリを実行する必要があります。この記事では、Flask-SQLAlchemy アプリケーションで生の SQL を効率的に実行する方法を検討します。

メソッド:

SQLAlchemy で生の SQL を実行するための推奨される方法は、データベースへの直接接続を確立することです。この接続を使用すると、ORM の制限を受けることなく任意の SQL ステートメントを実行できます。

SQLAlchemy 2.0:

SQLAlchemy 2.0 の場合、engine.connect() コンテキスト マネージャーを使用して一時データベース接続を作成することをお勧めします。このコンテキストでは、生の SQL クエリを実行できます。

<code class="language-python">with engine.connect() as connection:
    result = connection.execute(text('SELECT * FROM your_table'))
    # 处理查询结果</code>

SQLAlchemy 1.x:

SQLAlchemy 1.x では、db.engine.execute() メソッドを使用して生の SQL クエリを直接実行できます。ただし、このメソッドは「コネクションレス」であり、SQLAlchemy の以降のバージョンでは非推奨になっていることに注意することが重要です。

<code class="language-python">from sqlalchemy import text

sql = text('select name from penguins')
result = db.engine.execute(sql)
names = [row[0] for row in result]</code>

概要:

上記の手法を使用すると、Flask-SQLAlchemy アプリケーションで生の SQL クエリをシームレスに実行できます。生の SQL 操作ごとに必ずデータベース接続を確立し、結果を適切に処理してください。

以上がFlask-SQLAlchemy で生の SQL クエリを効果的に実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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