From 986e82700e2ddd82a74c4b5a48fa49d4fa89bdec Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Thu, 6 Sep 2007 16:37:37 +0000 Subject: - column defaults and onupdates, executing inline, will add parenthesis for subqueries and other parenthesis-requiring expressions --- lib/sqlalchemy/sql/compiler.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'lib/sqlalchemy') diff --git a/lib/sqlalchemy/sql/compiler.py b/lib/sqlalchemy/sql/compiler.py index f1d0e3294..2b4786cb2 100644 --- a/lib/sqlalchemy/sql/compiler.py +++ b/lib/sqlalchemy/sql/compiler.py @@ -678,7 +678,7 @@ class DefaultCompiler(engine.Compiled, visitors.ClauseVisitor): self.prefetch.add(c) elif isinstance(c.default, schema.ColumnDefault): if isinstance(c.default.arg, sql.ClauseElement): - values.append((c, self.process(c.default.arg))) + values.append((c, self.process(c.default.arg.self_group()))) self.postfetch.add(c) else: values.append((c, create_bind_param(c, None))) @@ -693,7 +693,7 @@ class DefaultCompiler(engine.Compiled, visitors.ClauseVisitor): elif self.isupdate: if isinstance(c.onupdate, schema.ColumnDefault): if isinstance(c.onupdate.arg, sql.ClauseElement): - values.append((c, self.process(c.onupdate.arg))) + values.append((c, self.process(c.onupdate.arg.self_group()))) self.postfetch.add(c) else: values.append((c, create_bind_param(c, None))) -- cgit v1.2.1