首页 >数据库 >mysql教程 >如何在 Flask-SQLAlchemy 中执行原始 SQL 语句?

如何在 Flask-SQLAlchemy 中执行原始 SQL 语句?

Linda Hamilton
Linda Hamilton原创
2025-01-17 05:16:09778浏览

How to Execute Raw SQL Statements in Flask-SQLAlchemy?

在Flask-SQLAlchemy中执行原始SQL语句

在Flask-SQLAlchemy应用中,处理涉及表连接和内联视图的复杂查询时,经常需要执行原始SQL语句。为此,SQLAlchemy提供了多种方法,具体取决于使用的版本。

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中,原始SQL执行需要text模块,如下所示:

<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]
print(names)</code>

需要注意的是,SQLAlchemy 1.x中的db.engine.execute()执行语句时不建立连接,这在SQLAlchemy 2.0中已被弃用。

以上是如何在 Flask-SQLAlchemy 中执行原始 SQL 语句?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn