Führen Sie unformatierte SQL-Anweisungen in Flask-SQLAlchemy aus
In Flask-SQLAlchemy-Anwendungen ist es bei der Verarbeitung komplexer Abfragen mit Tabellenverknüpfungen und Inline-Ansichten häufig erforderlich, unformatierte SQL-Anweisungen auszuführen. SQLAlchemy stellt hierfür je nach verwendeter Version mehrere Methoden zur Verfügung.
SQLAlchemy 2.0
Mit SQLAlchemy 2.0 kann Roh-SQL über den engine.connect()
Kontextmanager wie folgt ausgeführt werden:
<code class="language-python">with engine.connect() as connection: result = connection.execute(text('SELECT * FROM your_table')) # 对结果对象进行操作...</code>
SQLAlchemy 1.x
In SQLAlchemy 1.x erfordert die reine SQL-Ausführung das Modul text
wie folgt:
<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>
Es ist zu beachten, dass db.engine.execute()
in SQLAlchemy 1.x beim Ausführen von Anweisungen keine Verbindung aufbaut, was in SQLAlchemy 2.0 veraltet ist.
Das obige ist der detaillierte Inhalt vonWie führe ich Raw-SQL-Anweisungen in Flask-SQLAlchemy aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!