From: Rick Morrison Date: Wed, 14 Feb 2007 23:36:56 +0000 (+0000) Subject: Fix for ticket 473 X-Git-Tag: rel_0_3_5~37 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cd2ea14a78fbf585a0a854e819071149b62d99df;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git Fix for ticket 473 --- diff --git a/lib/sqlalchemy/databases/mssql.py b/lib/sqlalchemy/databases/mssql.py index 737a603c9f..63e04cef7a 100644 --- a/lib/sqlalchemy/databases/mssql.py +++ b/lib/sqlalchemy/databases/mssql.py @@ -558,6 +558,13 @@ class MSSQLCompiler(ansisql.ANSICompiler): self.strings[column] = \ self.strings[self.tablealiases[column.table].corresponding_column(column)] + def visit_binary(self, binary): + """Move bind parameters to the right-hand side of an operator, where possible.""" + if isinstance(binary.left, sql._BindParamClause) and binary.operator == '=': + binary.left, binary.right = binary.right, binary.left + super(MSSQLCompiler, self).visit_binary(binary) + + class MSSQLSchemaGenerator(ansisql.ANSISchemaGenerator): def get_column_specification(self, column, **kwargs): colspec = self.preparer.format_column(column) + " " + column.type.engine_impl(self.engine).get_col_spec()