diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2008-12-28 22:32:04 +0000 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2008-12-28 22:32:04 +0000 |
commit | 8598780e8d746a85897ab19bd514c9980bfe446e (patch) | |
tree | 4ca3be41a5673273c8d349d182b4ef4f01a1e4de /lib/sqlalchemy/databases/oracle.py | |
parent | bd23baf4ac0f9dd520120445594bd00f1b760f4b (diff) | |
download | sqlalchemy-8598780e8d746a85897ab19bd514c9980bfe446e.tar.gz |
- Added OracleNVarchar type, produces NVARCHAR2, and also
subclasses Unicode so that convert_unicode=True by default.
NVARCHAR2 reflects into this type automatically so
these columns pass unicode on a reflected table with no explicit
convert_unicode=True flags. [ticket:1233]
Diffstat (limited to 'lib/sqlalchemy/databases/oracle.py')
-rw-r--r-- | lib/sqlalchemy/databases/oracle.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/sqlalchemy/databases/oracle.py b/lib/sqlalchemy/databases/oracle.py index aed070f2e..5a305ffd2 100644 --- a/lib/sqlalchemy/databases/oracle.py +++ b/lib/sqlalchemy/databases/oracle.py @@ -202,6 +202,10 @@ class OracleString(sqltypes.String): def get_col_spec(self): return "VARCHAR(%(length)s)" % {'length' : self.length} +class OracleNVarchar(sqltypes.Unicode, OracleString): + def get_col_spec(self): + return "NVARCHAR2(%(length)s)" % {'length' : self.length} + class OracleText(sqltypes.Text): def get_dbapi_type(self, dbapi): return dbapi.CLOB @@ -297,6 +301,7 @@ colspecs = { ischema_names = { 'VARCHAR2' : OracleString, + 'NVARCHAR2' : OracleNVarchar, 'CHAR' : OracleString, 'DATE' : OracleDateTime, 'DATETIME' : OracleDateTime, @@ -888,4 +893,4 @@ dialect.schemagenerator = OracleSchemaGenerator dialect.schemadropper = OracleSchemaDropper dialect.preparer = OracleIdentifierPreparer dialect.defaultrunner = OracleDefaultRunner -dialect.execution_ctx_cls = OracleExecutionContext
\ No newline at end of file +dialect.execution_ctx_cls = OracleExecutionContext |