Maison >base de données >tutoriel mysql >Comment exécuter efficacement des requêtes SQL brutes dans Flask-SQLAlchemy ?
Exécuter du SQL brut dans l'application Flask-SQLAlchemy
Dans Flask-SQLAlchemy, lorsqu'il s'agit d'opérations de données complexes qui ne peuvent pas être réalisées à l'aide de SQLAlchemy ORM, des requêtes SQL brutes doivent être exécutées. Cet article explore les moyens d'exécuter efficacement du SQL brut dans les applications Flask-SQLAlchemy.
Méthode :
La méthode préférée pour exécuter du SQL brut dans SQLAlchemy est d'établir une connexion directe à la base de données. Grâce à cette connexion, vous pouvez exécuter des instructions SQL arbitraires sans être limité par l'ORM.
SQLAlchimie 2.0 :
Pour SQLAlchemy 2.0, l'approche recommandée consiste à utiliser le engine.connect()
gestionnaire de contexte pour créer des connexions temporaires à la base de données. Dans ce contexte vous pouvez exécuter des requêtes SQL brutes.
<code class="language-python">with engine.connect() as connection: result = connection.execute(text('SELECT * FROM your_table')) # 处理查询结果</code>
SQLAlchemy 1.x :
Dans SQLAlchemy 1.x, vous pouvez utiliser la méthode db.engine.execute()
pour exécuter directement des requêtes SQL brutes. Cependant, il est important de noter que cette méthode est « sans connexion » et est obsolète dans les versions ultérieures de 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>
Résumé :
En utilisant les techniques ci-dessus, vous pouvez exécuter de manière transparente des requêtes SQL brutes dans votre application Flask-SQLAlchemy. N'oubliez pas d'établir une connexion à la base de données pour chaque opération SQL brute et de gérer les résultats de manière appropriée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!