summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/ansisql.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2006-09-04 23:05:36 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2006-09-04 23:05:36 +0000
commit189f015c2aee644d6292702df4d2d945d9aba7b9 (patch)
tree1f8a8216f57346f1ee8e3c7435f1fb686fbcdde0 /lib/sqlalchemy/ansisql.py
parent3a4f96e070118e8253f17312aab325ebab3e3e62 (diff)
downloadsqlalchemy-189f015c2aee644d6292702df4d2d945d9aba7b9.tar.gz
further fixes to case sensitive logic
Diffstat (limited to 'lib/sqlalchemy/ansisql.py')
-rw-r--r--lib/sqlalchemy/ansisql.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/lib/sqlalchemy/ansisql.py b/lib/sqlalchemy/ansisql.py
index d053f7389..c44595f36 100644
--- a/lib/sqlalchemy/ansisql.py
+++ b/lib/sqlalchemy/ansisql.py
@@ -775,14 +775,15 @@ class ANSIIdentifierPreparer(object):
if getattr(obj, 'quote', False):
return self._quote_identifier(ident)
if self.dialect.cache_identifiers:
+ case_sens = getattr(obj, 'case_sensitive', None)
try:
- return self.__strings[ident]
+ return self.__strings[(ident, case_sens)]
except KeyError:
if self._requires_quotes(ident, getattr(obj, 'case_sensitive', ident == ident.lower())):
- self.__strings[ident] = self._quote_identifier(ident)
+ self.__strings[(ident, case_sens)] = self._quote_identifier(ident)
else:
- self.__strings[ident] = ident
- return self.__strings[ident]
+ self.__strings[(ident, case_sens)] = ident
+ return self.__strings[(ident, case_sens)]
else:
if self._requires_quotes(ident, getattr(obj, 'case_sensitive', ident == ident.lower())):
return self._quote_identifier(ident)