- MySQL dialect doesn't emit CAST() for MySQL version
detected < 4.0.2. This allows the unicode
check on connect to proceed. [ticket:1826]
+
+- oracle:
+ - Fixed ora-8 compatibility flags such that they
+ don't cache a stale value from before the first
+ database connection actually occurs. [ticket:1819]
- firebird
- Fixed incorrect signature in do_execute(), error
return self.server_version_info and \
self.server_version_info < (9, )
- @util.memoized_property
+ @property
def _supports_char_length(self):
return not self._is_oracle_8
- @util.memoized_property
+ @property
def _supports_nchar(self):
return not self._is_oracle_8
dialect = oracle.dialect()
dialect._get_server_version_info = server_version_info
+
+ # before connect, assume modern DB
+ assert dialect._supports_char_length
+ assert dialect._supports_nchar
+ assert dialect.use_ansi
+
dialect.initialize(testing.db.connect())
assert not dialect._supports_char_length
assert not dialect._supports_nchar
self.assert_compile(Unicode(50),"NVARCHAR2(50)",dialect=dialect)
self.assert_compile(UnicodeText(),"NCLOB",dialect=dialect)
+
class MultiSchemaTest(TestBase, AssertsCompiledSQL):
__only_on__ = 'oracle'