Einfügen und Aktualisieren mit SQLAlchemy

Ich habe eine Datenbank, für die ich keine Metadaten oder Orm-Klassen habe (die Datenbank ist bereits vorhanden).

Ich habe es geschafft, die ausgewählten Dinge zum Laufen zu bringen:

from sqlalchemy.sql.expression import ColumnClause
from sqlalchemy.sql import table, column, select, update, insert
from sqlalchemy.ext.declarative import *
from sqlalchemy.orm import sessionmaker
from sqlalchemy import create_engine
import pyodbc

db = create_engine('mssql+pyodbc://pytest')
Session = sessionmaker(bind=db)
session = Session()

list = []
list.append (column("field1"))
list.append (column("field2"))
list.append (column("field3"))

s = select(list)
s.append_from('table')
s.append_whereclause("field1 = 'abc'")
s = s.limit(10)

result = session.execute(s)
out = result.fetchall()

print(out)

So weit, ist es gut.

Die einzige Möglichkeit, ein Update / Insert zum Laufen zu bringen, besteht darin, eine unformatierte Abfrage wie die folgende auszuführen:

session.execute(<Some sql>)

Ich würde es gerne schaffen, damit ich eine Klasse daraus machen kann:

u = Update("table")
u.Set("file1","some value")
u.Where(<some conditon>)

seasion.execute(u)

Versucht (dies ist nur einer der Ansätze, die ich ausprobiert habe):

i = insert("table")
v = i.values([{"name":"name1"}, {"name":"name2"}])

u = update("table")
u = u.values({"name": "test1"})

Ich kann das nicht ausführen lassen auf:

session.execute(i)

oder

session.execute(u)

Irgendwelche Vorschläge, wie man eine Einfügung oder Aktualisierung erstellt, ohne ORM-Modelle zu schreiben?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage