Actually, answered that myself as soon as I pressed 'send'. ;-) On Jan 30, 7:23 pm, ObjectEvolution <[email protected]> wrote: > Thanks Michael. So then it looks like my options are to: > > 1. Convert the longs. > > 2. Declare my columns instead of using reflection so I get the right > types. > > On Jan 30, 7:18 pm, Michael Bayer <[email protected]> wrote: > > > > > On Jan 30, 2011, at 8:55 PM, ObjectEvolution wrote: > > > > Hi, > > > > I'm reflecting some tables out of MySQL for a User object and when I > > > call: > > > > user.ID > > > > I get a value like this: > > > > 10L > > > > instead of: > > > > 10 > > > > If I wrap it up like this: > > > > int(user.ID) > > > > I get: > > > > 10 > > > > It seems that the reflection thinks my int column is a long. Why is > > > that happening and how can I fix it? Abandon reflection? > > > MySQL-python returns ints as Python longs. They are cross compatible. > > SQLA's reflection is not involved. > > > from sqlalchemy import * > > > e = create_engine('mysql://scott:tiger@localhost/test') > > print repr(e.scalar(select([1]))) > > print repr(e.scalar(select([cast(1, Integer)]))) > > > raw_mysqldb_connection = e.connect().connection > > cursor = raw_mysqldb_connection.cursor() > > cursor.execute("select 1") > > print cursor.fetchall() > > > output: > > > 1L > > 1L > > ((1L,),)
-- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en.
