From: Jason Kirtland Date: Wed, 22 Aug 2007 00:21:06 +0000 (+0000) Subject: For sqlite NUMERIC, send Decimal bind values as strings instead of converting to... X-Git-Tag: rel_0_4beta4~12 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=372e69ee08cd2d35747edf311ff3b539923b1728;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git For sqlite NUMERIC, send Decimal bind values as strings instead of converting to floats. --- diff --git a/lib/sqlalchemy/databases/sqlite.py b/lib/sqlalchemy/databases/sqlite.py index 8618bfc3ed..86146af4d5 100644 --- a/lib/sqlalchemy/databases/sqlite.py +++ b/lib/sqlalchemy/databases/sqlite.py @@ -18,6 +18,15 @@ from sqlalchemy.sql import compiler SELECT_REGEXP = re.compile(r'\s*(?:SELECT|PRAGMA)', re.I | re.UNICODE) class SLNumeric(sqltypes.Numeric): + def bind_processor(self, dialect): + type_ = self.asdecimal and str or float + def process(value): + if value is not None: + return type_(value) + else: + return value + return process + def get_col_spec(self): if self.precision is None: return "NUMERIC"