summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRick Morrison <rickmorrison@gmail.com>2007-07-09 20:37:55 +0000
committerRick Morrison <rickmorrison@gmail.com>2007-07-09 20:37:55 +0000
commit5cb66ee718ee15e91e6036d573aaec67d4c43fe6 (patch)
treeef7065eafc3ef91321f81601bd633659190a4780
parentaf611b101842ee9482ddd901762fd73a6fe62364 (diff)
downloadsqlalchemy-5cb66ee718ee15e91e6036d573aaec67d4c43fe6.tar.gz
Fix port option handling for mssql/pyodbc [ticket:634]
-rw-r--r--CHANGES4
-rw-r--r--lib/sqlalchemy/databases/mssql.py7
2 files changed, 9 insertions, 2 deletions
diff --git a/CHANGES b/CHANGES
index 5aa873434..606d9baba 100644
--- a/CHANGES
+++ b/CHANGES
@@ -90,6 +90,10 @@
- sqlite better handles datetime/date/time objects mixed and matched
with various Date/Time/DateTime columns
- string PK column inserts dont get overwritten with OID [ticket:603]
+
+- mssql
+ - fix port option handling for pyodbc [ticket:634]
+
- extensions
- added selectone_by() to assignmapper
diff --git a/lib/sqlalchemy/databases/mssql.py b/lib/sqlalchemy/databases/mssql.py
index 2b6808eac..b4ae8053f 100644
--- a/lib/sqlalchemy/databases/mssql.py
+++ b/lib/sqlalchemy/databases/mssql.py
@@ -599,7 +599,7 @@ class MSSQLDialect_pymssql(MSSQLDialect):
self.use_scope_identity = True
def supports_sane_rowcount(self):
- return True
+ return False
def max_identifier_length(self):
return 30
@@ -686,7 +686,10 @@ class MSSQLDialect_pyodbc(MSSQLDialect):
def make_connect_string(self, keys):
connectors = ["Driver={SQL Server}"]
- connectors.append("Server=%s" % keys.get("host"))
+ 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: