From 2cb2b624f97a88df857777104cc0db6d733306ef Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Thu, 13 Jul 2006 01:12:53 +0000 Subject: fixed up boolean datatype for sqlite, mysql, ms-sql --- lib/sqlalchemy/databases/mysql.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'lib/sqlalchemy/databases/mysql.py') diff --git a/lib/sqlalchemy/databases/mysql.py b/lib/sqlalchemy/databases/mysql.py index e152a4833..997010f1c 100644 --- a/lib/sqlalchemy/databases/mysql.py +++ b/lib/sqlalchemy/databases/mysql.py @@ -157,7 +157,7 @@ class MSBinary(sqltypes.Binary): return "BINARY(%d)" % self.length else: return "BLOB" - def convert_result_value(self, value, engine): + def convert_result_value(self, value, dialect): if value is None: return None else: @@ -182,7 +182,20 @@ class MSEnum(sqltypes.String): class MSBoolean(sqltypes.Boolean): def get_col_spec(self): return "BOOLEAN" - + def convert_result_value(self, value, dialect): + if value is None: + return None + return value and True or False + def convert_bind_param(self, value, dialect): + if value is True: + return 1 + elif value is False: + return 0 + elif value is None: + return None + else: + return value and True or False + colspecs = { # sqltypes.BIGinteger : MSInteger, sqltypes.Integer : MSInteger, -- cgit v1.2.1