Heim  >  Artikel  >  Backend-Entwicklung  >  So führen Sie Raw-SQL-Abfragen in Flask-SQLAlchemy aus: Eine Anleitung für die Versionen 1.x und 2.0

So führen Sie Raw-SQL-Abfragen in Flask-SQLAlchemy aus: Eine Anleitung für die Versionen 1.x und 2.0

Patricia Arquette
Patricia ArquetteOriginal
2024-10-25 23:02:29961Durchsuche

How to Execute Raw SQL Queries in Flask-SQLAlchemy: A Guide for Versions 1.x and 2.0

Ausführen von Roh-SQL in Flask-SQLAlchemy

Die Integration von Roh-SQL in eine Flask-SQLAlchemy-Webanwendung stellt eine Herausforderung dar, da komplexe Abfragen mit mehreren Tabellenverknüpfungen berücksichtigt werden müssen und Inline-Ansichten.

Um dieses Problem zu lösen, bietet SQLAlchemy zwei Ansätze an, einen für Version 2.0 und einen anderen für Version 1.x.

SQLAlchemy 2.0

Verwenden Sie engine.connect ()-Methode zum Herstellen einer Verbindung mit der Datenbank, die eine reine SQL-Ausführung ermöglicht:

<code class="python">with engine.connect() as connection:
    result = connection.execute(text('SELECT * FROM your_table'))
    # Perform desired actions with the result</code>

SQLAlchemy 1.x

Alternativ können Sie den folgenden Ansatz in Betracht ziehen:

<code class="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 erwähnenswert, dass db.engine.execute() verbindungslos ist, was in SQLAlchemy 2.0 als veraltet gilt.

Das obige ist der detaillierte Inhalt vonSo führen Sie Raw-SQL-Abfragen in Flask-SQLAlchemy aus: Eine Anleitung für die Versionen 1.x und 2.0. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn