From 6fd0bc7c62849a1dc34ca7d93aeeaaff25897648 Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Mon, 14 Jul 2014 19:16:11 -0400 Subject: [PATCH] - Fixed a regression from 0.9.5 caused by :ticket:`3025` where the query used to determine "default schema" is invalid in SQL Server 2000. For SQL Server 2000 we go back to defaulting to the "schema name" parameter of the dialect, which is configurable but defaults to 'dbo'. fixes #3025 --- doc/build/changelog/changelog_09.rst | 10 ++++++++++ lib/sqlalchemy/dialects/mssql/base.py | 3 +++ 2 files changed, 13 insertions(+) diff --git a/doc/build/changelog/changelog_09.rst b/doc/build/changelog/changelog_09.rst index a2fc84b120..8be2346f6e 100644 --- a/doc/build/changelog/changelog_09.rst +++ b/doc/build/changelog/changelog_09.rst @@ -14,6 +14,16 @@ :version: 0.9.7 :released: + .. change:: + :tags: bug, mssql + :tickets: 3025 + + Fixed a regression from 0.9.5 caused by :ticket:`3025` where the + query used to determine "default schema" is invalid in SQL Server 2000. + For SQL Server 2000 we go back to defaulting to the "schema name" + parameter of the dialect, which is configurable but defaults + to 'dbo'. + .. change:: :tags: bug, orm :tickets: 3083, 2736 diff --git a/lib/sqlalchemy/dialects/mssql/base.py b/lib/sqlalchemy/dialects/mssql/base.py index eebd35405b..473f7df06d 100644 --- a/lib/sqlalchemy/dialects/mssql/base.py +++ b/lib/sqlalchemy/dialects/mssql/base.py @@ -1365,6 +1365,9 @@ class MSDialect(default.DefaultDialect): self.supports_multivalues_insert = True def _get_default_schema_name(self, connection): + if self.server_version_info < MS_2005_VERSION: + return self.schema_name + query = sql.text(""" SELECT default_schema_name FROM sys.database_principals -- 2.47.3