8
from sqlalchemy import create_engine, MetaData, ForeignKey
engine = create_engine("mysql://user:[email protected]/shema", echo=False)
meta = MetaData(engine, True)
conn = engine.connect()
tb_list = meta.tables["tb_list"]
tb_data = meta.tables["tb_data"]
tb_list.c.i_data.append_foreign_key(ForeignKey(tb_data.c.i_id))
q = tb_list.outerjoin(tb_data).select()
res = conn.execute(q)
Und jetzt, wie kann ich Spalten Art von Abfrageergebnis res
SQLAlchemy immer Spaltendatentypen von Abfrageergebnissen
Einer von Entscheidungen erhalten:
res._key_cache[ col_name ][0]
Kennen Sie etwas anderes?
Stimmt es, dass Sie eine anbieterspezifische Suche durchführen müssen, um die tatsächlichen Datentypen zu erhalten? z.B. in Postgres, 'TYPES [res.context.cursor.description.type_code]', wobei 'TYPES' eine Zuordnung von [Postgres type OIDs] ist (http://initd.org/psycopg/docs/advanced.html#type- casting-from-sql-zu-python)? – z0r
@ z0r in psycopg2 können diese Werte die Objekte selbst sein. psycopg2's Objekte, die ich als Integer oder ähnliches interpretiere, probiere es aus. – zzzeek