diff options
Diffstat (limited to 'lib/sqlalchemy/ansisql.py')
-rw-r--r-- | lib/sqlalchemy/ansisql.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/sqlalchemy/ansisql.py b/lib/sqlalchemy/ansisql.py index cdd860440..82abb9577 100644 --- a/lib/sqlalchemy/ansisql.py +++ b/lib/sqlalchemy/ansisql.py @@ -231,7 +231,13 @@ class ANSICompiler(sql.Compiled): self.strings[list] = "(" + string.join([self.get_str(c) for c in list.clauses], ' ') + ")" else: self.strings[list] = string.join([self.get_str(c) for c in list.clauses], ' ') - + + def visit_cast(self, cast): + if len(self.select_stack): + # not sure if we want to set the typemap here... + self.typemap.setdefault("CAST", cast.type) + self.strings[cast] = "CAST(%s AS %s)" % (self.strings[cast.clause],self.strings[cast.typeclause]) + def visit_function(self, func): if len(self.select_stack): self.typemap.setdefault(func.name, func.type) |