]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commit
Add use_nchar_for_unicode flag; don't use nchar types for generic unicode
authorMike Bayer <mike_mp@zzzcomputing.com>
Wed, 13 Jun 2018 21:48:51 +0000 (17:48 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Sun, 23 Sep 2018 01:34:32 +0000 (21:34 -0400)
commitfb991a4474fa0d4df69af10a808fe234016c6a52
treec4243c5a6f8f45b163adb87fc393d11dbed38bb2
parenta4da6452c35daaa057acb895206b9104c2b70ac4
Add use_nchar_for_unicode flag; don't use nchar types for generic unicode

The Oracle dialect will no longer use the NCHAR/NCLOB datatypes to
represent generic unicode strings or clob fields in conjunction with
:class:`.Unicode` and :class:`.UnicodeText` unless the flag
``use_nchar_for_unicode=True`` is passed to :func:`.create_engine`.
Additionally, string types under Oracle now coerce to unicode under Python
2 in all cases, however unlike in previous iterations, we use SQLAlchemy's
native unicode handlers which are very performant (when C extensions are
enabled; when they are not, we use cx_Oracle's handlers).

Change-Id: I3939012e9396520875bc52e69bf81f27393836ee
Fixes: #4242
doc/build/changelog/migration_13.rst
doc/build/changelog/unreleased_13/4242.rst [new file with mode: 0644]
lib/sqlalchemy/dialects/oracle/base.py
lib/sqlalchemy/dialects/oracle/cx_oracle.py
lib/sqlalchemy/engine/default.py
test/dialect/oracle/test_dialect.py
test/dialect/oracle/test_types.py
test/profiles.txt