From: Roger Demetrescu Date: Fri, 12 Oct 2007 12:53:33 +0000 (+0000) Subject: firebird: Fixed reflection for Integer and Numeric (after introducing Float column... X-Git-Tag: rel_0_4_0~39 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=7f360074771ec455ae0eb3242e2945d7850398df;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git firebird: Fixed reflection for Integer and Numeric (after introducing Float column type). Need to review 'column_func' from reflecttable() and write some unit tests... --- diff --git a/lib/sqlalchemy/databases/firebird.py b/lib/sqlalchemy/databases/firebird.py index a427c72203..71c2d3df0f 100644 --- a/lib/sqlalchemy/databases/firebird.py +++ b/lib/sqlalchemy/databases/firebird.py @@ -223,7 +223,7 @@ class FBDialect(default.DefaultDialect): column_func = { 14 : lambda r: sqltypes.String(r['FLEN']), # TEXT 7 : lambda r: sqltypes.Integer(), # SHORT - 8 : lambda r: sqltypes.Integer(), # LONG + 8 : lambda r: r['FPREC']==0 and sqltypes.Integer() or sqltypes.Numeric(precision=r['FPREC'], length=r['FSCALE'] * -1), #INT or NUMERIC 9 : lambda r: sqltypes.Float(), # QUAD 10 : lambda r: sqltypes.Float(), # FLOAT 27 : lambda r: sqltypes.Float(), # DOUBLE