summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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: