summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/databases/mssql.py
diff options
context:
space:
mode:
authorPaul Johnston <paj@pajhome.org.uk>2007-08-17 18:00:30 +0000
committerPaul Johnston <paj@pajhome.org.uk>2007-08-17 18:00:30 +0000
commit93961ff3c77084c0d5c1de247de7690702aa79a1 (patch)
tree96c8291cc11b1fcfc1e554450156e30b101ab54d /lib/sqlalchemy/databases/mssql.py
parent95748cfc024a9fa875c0ec9323ec5266bb4725c5 (diff)
downloadsqlalchemy-93961ff3c77084c0d5c1de247de7690702aa79a1.tar.gz
merge changset [3347] into trunk
Diffstat (limited to 'lib/sqlalchemy/databases/mssql.py')
-rw-r--r--lib/sqlalchemy/databases/mssql.py14
1 files changed, 9 insertions, 5 deletions
diff --git a/lib/sqlalchemy/databases/mssql.py b/lib/sqlalchemy/databases/mssql.py
index 25238c697..619e072d9 100644
--- a/lib/sqlalchemy/databases/mssql.py
+++ b/lib/sqlalchemy/databases/mssql.py
@@ -791,15 +791,19 @@ class MSSQLDialect_pyodbc(MSSQLDialect):
def supports_unicode_statements(self):
"""indicate whether the DBAPI can receive SQL statements as Python unicode strings"""
+ # PyODBC unicode is broken on UCS-4 builds
return sys.maxunicode == 65535
def make_connect_string(self, keys):
- connectors = ["Driver={SQL Server}"]
- if 'port' in keys:
- connectors.append('Server=%s,%d' % (keys.get('host'), keys.get('port')))
+ if 'dsn' in keys:
+ connectors = ['dsn=%s' % keys['dsn']]
else:
- connectors.append('Server=%s' % keys.get('host'))
- connectors.append("Database=%s" % keys.get("database"))
+ connectors = ["Driver={SQL Server}"]
+ if 'port' in keys:
+ connectors.append('Server=%s,%d' % (keys.get('host'), keys.get('port')))
+ else:
+ connectors.append('Server=%s' % keys.get('host'))
+ connectors.append("Database=%s" % keys.get("database"))
user = keys.get("user")
if user:
connectors.append("UID=%s" % user)