summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/ansisql.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2005-10-23 20:40:22 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2005-10-23 20:40:22 +0000
commit9a2a2dfc7ac91770227fd2c420b126e745c5d3f1 (patch)
tree612cabdaa4561f64f978e178ff3c3e1a4e3ce7ad /lib/sqlalchemy/ansisql.py
parentf56d75c3ad9fbe7ff85b5b65698cd5696d12ee28 (diff)
downloadsqlalchemy-9a2a2dfc7ac91770227fd2c420b126e745c5d3f1.tar.gz
Diffstat (limited to 'lib/sqlalchemy/ansisql.py')
-rw-r--r--lib/sqlalchemy/ansisql.py8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/sqlalchemy/ansisql.py b/lib/sqlalchemy/ansisql.py
index 0b0aeca44..963e52a1f 100644
--- a/lib/sqlalchemy/ansisql.py
+++ b/lib/sqlalchemy/ansisql.py
@@ -48,13 +48,13 @@ class ANSISQLEngine(sqlalchemy.engine.SQLEngine):
class ANSICompiler(sql.Compiled):
- def __init__(self, engine, statement, bindparams):
+ def __init__(self, engine, statement, bindparams, typemap=None, **kwargs):
sql.Compiled.__init__(self, engine, statement, bindparams)
self.binds = {}
self.froms = {}
self.wheres = {}
self.strings = {}
- self.typemap = {}
+ self.typemap = typemap or {}
self.isinsert = False
def get_from_text(self, obj):
@@ -157,9 +157,9 @@ class ANSICompiler(sql.Compiled):
for co in c.columns:
inner_columns.append(co)
if select.use_labels:
- self.typemap[co.label] = co.type
+ self.typemap.setdefault(co.label, co.type)
else:
- self.typemap[co.key] = co.type
+ self.typemap.setdefault(co.key, co.type)
if select.use_labels:
collist = string.join(["%s AS %s" % (c.fullname, c.label) for c in inner_columns], ', ')