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)
E ora, come posso ottenere colonne tipo di risultato della query res
SQLAlchemy tipi di dati ricevendo colonna di risultati di query
Una delle decisioni:
res._key_cache[ col_name ][0]
Sai qualcosa di diverso?
È vero che è necessario eseguire una ricerca specifica del fornitore per ottenere i tipi di dati effettivi? per esempio. in Postgres, 'TYPES [res.context.cursor.description.type_code]', dove 'TYPES' è una mappatura di [OID di tipo Postgres] (http://initd.org/psycopg/docs/advanced.html#type- Casting-da-sql-to-python)? – z0r
@ z0r in psycopg2, quei valori potrebbero essere gli oggetti stessi. Gli oggetti di psycopg2 penso valgano come interi o qualcosa del genere, provalo. – zzzeek