From: Mike Bayer Date: Thu, 26 Jul 2007 22:18:59 +0000 (+0000) Subject: temporarily disabling genrated type_map which breaks all the othe rdialects X-Git-Tag: rel_0_4_6~8 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=6da610b89a9cbd40061dc11caaf650adc8eaa131;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git temporarily disabling genrated type_map which breaks all the othe rdialects --- diff --git a/lib/sqlalchemy/databases/oracle.py b/lib/sqlalchemy/databases/oracle.py index cdf14c9fa7..3350a35068 100644 --- a/lib/sqlalchemy/databases/oracle.py +++ b/lib/sqlalchemy/databases/oracle.py @@ -220,6 +220,7 @@ class OracleDialect(ansisql.ANSIDialect): else: self.ORACLE_BINARY_TYPES = [] + def dbapi(cls): import cx_Oracle return cx_Oracle diff --git a/lib/sqlalchemy/engine/default.py b/lib/sqlalchemy/engine/default.py index 03af9272ac..ff7a62eec0 100644 --- a/lib/sqlalchemy/engine/default.py +++ b/lib/sqlalchemy/engine/default.py @@ -29,13 +29,19 @@ class DefaultDialect(base.Dialect): TODO: dialects should export this mapping explicitly, instead of relying upon module searching. + + TODO: so far, this only seems to work with oracle """ dialect_module = sys.modules[self.__class__.__module__] map = {} - for obj in dialect_module.__dict__.values(): - if isinstance(obj, type) and issubclass(obj, types.TypeEngine): - obj = obj() - map[obj.get_dbapi_type(self.dbapi)] = obj + if False: + for obj in dialect_module.__dict__.values(): + if self.dbapi is not None and isinstance(obj, type) and issubclass(obj, types.TypeEngine): + obj = obj() + try: + map[obj.get_dbapi_type(self.dbapi)] = obj + except AttributeError: + pass self._dbapi_type_map = map def decode_result_columnname(self, name):