summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/databases
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2009-07-31 23:10:46 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2009-07-31 23:10:46 +0000
commite58b66838d95e9c5e57f3567940f619c730a7d69 (patch)
tree2b7517e56a67e672f29bc1c146959b52290c0357 /lib/sqlalchemy/databases
parent458c7afa79cb43a169853562556f37afb2f611ee (diff)
downloadsqlalchemy-e58b66838d95e9c5e57f3567940f619c730a7d69.tar.gz
backported 0.6 r6084 fix for oracle alias names, [ticket:1309]
Diffstat (limited to 'lib/sqlalchemy/databases')
-rw-r--r--lib/sqlalchemy/databases/oracle.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/sqlalchemy/databases/oracle.py b/lib/sqlalchemy/databases/oracle.py
index 6749d8e40..852cab448 100644
--- a/lib/sqlalchemy/databases/oracle.py
+++ b/lib/sqlalchemy/databases/oracle.py
@@ -127,7 +127,7 @@ import datetime, random, re
from sqlalchemy import util, sql, schema, log
from sqlalchemy.engine import default, base
-from sqlalchemy.sql import compiler, visitors
+from sqlalchemy.sql import compiler, visitors, expression
from sqlalchemy.sql import operators as sql_operators, functions as sql_functions
from sqlalchemy import types as sqltypes
@@ -769,7 +769,11 @@ class OracleCompiler(compiler.DefaultCompiler):
"""Oracle doesn't like ``FROM table AS alias``. Is the AS standard SQL??"""
if asfrom:
- return self.process(alias.original, asfrom=asfrom, **kwargs) + " " + self.preparer.format_alias(alias, self._anonymize(alias.name))
+ alias_name = isinstance(alias.name, expression._generated_label) and \
+ self._truncated_identifier("alias", alias.name) or alias.name
+
+ return self.process(alias.original, asfrom=True, **kwargs) + " " +\
+ self.preparer.format_alias(alias, alias_name)
else:
return self.process(alias.original, **kwargs)