为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:8
【操作系统】:centos7
【CPU】:
【问题描述】*:ZHS16GBK编码的oracle迁移到UTF-8编码的达梦数据库的时候,我原来的Oracle11g中有一些物化视图从三方数据库获取数据,现在迁移到达梦数据库的时候,
因为原来的字段类型都是varchar2(4000),迁移的时候就会提示oracle column-level return code [1406] ,
手动迁移的时候
CAST(FFJ as VARCHAR(8000)) AS FFJ 会提示 ORA-00910: specified length too long for its datatype
使用CAST(FFJ AS TEXT) AS FFJ 会提示ORA-00902: invalid datatype
使用CAST(FFJ AS CLOB) AS FFJ 会提示ORA-00932: inconsistent datatypes: expected - got CLOB
使用CAST(TO_BLOB(FFJ) AS CLOB) AS FFJ 会提示 [-6147]:无效的十六进制数字
使用CAST(TO_BLOB(HEX(FFJ)) AS CLOB) AS FFJ 会提示oracle column-level return code [1406]
这个在目的端把表结构启用超长记录即可。比如:
alter table TEST_1 enable using long row;