[SQLObject] possible bug in pymssql make_conn_str
SQLObject is a Python ORM.
Brought to you by:
ianbicking,
phd
|
From: Robert A. <rob...@gm...> - 2013-08-16 00:57:45
|
Hello.
There is a code in sqlobject/mssql/mssqlconnection.py:
else: # pymssql
self.dbconnection = sqlmodule.connect
sqlmodule.Binary = lambda st: str(st)
# don't know whether pymssql uses unicode
self.usingUnicodeStrings = False
self.make_conn_str = lambda keys: \
["", keys.user, keys.password, keys.host, keys.db]
However, pymssql.connect declaration is following:
def connect(server='.', user='', password='', database='', timeout=0,
login_timeout=60, charset=None, as_dict=False,
host='', appname=None, port='1433')
So seems make_conn_str produces wrong set of params which throws:
pymssql.InterfaceError: Connection to the database failed for an unknown
reason.
(because actual host value is empty).
I've updated it like that:
self.make_conn_str = lambda keys: \
[".", keys.user, keys.password, keys.db, 0, 60,
None, False, keys.host, None, keys.port]
and things started to work.
Thanks.
|