From d5186e92534b4d38e590cef2d56c85be845bfdf0 Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Thu, 21 Jun 2012 16:49:29 -0400 Subject: - [bug] quoting is applied to the column names inside the WITH RECURSIVE clause of a common table expression according to the quoting rules for the originating Column. [ticket:2512] --- lib/sqlalchemy/sql/compiler.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'lib/sqlalchemy/sql/compiler.py') diff --git a/lib/sqlalchemy/sql/compiler.py b/lib/sqlalchemy/sql/compiler.py index e0cdbe24c..96ca1c57d 100644 --- a/lib/sqlalchemy/sql/compiler.py +++ b/lib/sqlalchemy/sql/compiler.py @@ -790,10 +790,13 @@ class SQLCompiler(engine.Compiled): col_source = cte.original.selects[0] else: assert False - recur_cols = [c.key for c in util.unique_list(col_source.inner_columns) + recur_cols = [c for c in + util.unique_list(col_source.inner_columns) if c is not None] - text += "(%s)" % (", ".join(recur_cols)) + text += "(%s)" % (", ".join( + self.preparer.format_column(ident) + for ident in recur_cols)) text += " AS \n" + \ cte.original._compiler_dispatch( self, asfrom=True, **kwargs -- cgit v1.2.1