From: Rick Morrison Date: Fri, 13 Feb 2009 17:18:52 +0000 (+0000) Subject: Preliminary support for pymssql 1.0.1 [Ticket:1318] X-Git-Tag: rel_0_5_3~31 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=7954673ea7c67bce21eac18779cf611d1bcf123b;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git Preliminary support for pymssql 1.0.1 [Ticket:1318] --- diff --git a/CHANGES b/CHANGES index 605bd55014..9c4ab7d73d 100644 --- a/CHANGES +++ b/CHANGES @@ -62,6 +62,9 @@ CHANGES - postgres - Index reflection won't fail when an index with multiple expressions is encountered. + +- mssql + - Preliminary support for pymssql 1.0.1 0.5.2 ====== diff --git a/lib/sqlalchemy/databases/mssql.py b/lib/sqlalchemy/databases/mssql.py index 90021b1d65..850ac78642 100644 --- a/lib/sqlalchemy/databases/mssql.py +++ b/lib/sqlalchemy/databases/mssql.py @@ -1270,6 +1270,10 @@ class MSSQLDialect_pymssql(MSSQLDialect): # pymmsql doesn't have a Binary method. we use string # TODO: monkeypatching here is less than ideal module.Binary = lambda st: str(st) + try: + module.version_info = tuple(map(int, module.__version__.split('.'))) + except: + module.version_info = (0, 0, 0) return module def __init__(self, **params): @@ -1291,7 +1295,10 @@ class MSSQLDialect_pymssql(MSSQLDialect): def create_connect_args(self, url): r = super(MSSQLDialect_pymssql, self).create_connect_args(url) if hasattr(self, 'query_timeout'): - self.dbapi._mssql.set_query_timeout(self.query_timeout) + if self.dbapi.version_info > (0, 8, 0): + r[1]['timeout'] = self.query_timeout + else: + self.dbapi._mssql.set_query_timeout(self.query_timeout) return r def make_connect_string(self, keys, query):