在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中文網其他相關文章!