问题:oracle中的字段内容迁移到达梦数据库后内容被截断了?
原因DM初始化时字符集的设置问题
1.UNICODE=0 LENGTH_IN_CHAR=0
GBK 以字节为单位时
一个英文对应一个字节 一个汉字对应两个字节
2.UNICODE=0 LENGTH_IN_CHAR=1
GBK 以字符为单位时
一个字符对应两个字节 一个数字字母占用一个字节
一个汉字对应一个字符即两个字节
3.UNICODE=1 LENGTH_IN_CHAR=0
UTF8 字节为单位
一个数字字母或占用一个字节 一个汉字占用三个字节
3.UNICODE=1 LENGTH_IN_CHAR=1
UTF8 字节为单位
一个数字字母或占用一个字符 一个汉字占用三个字节,一个字符对应四个字节 varchar长度为3时 最多可以录四个汉字
查询DM采用的字符集
select UNICODE();
查询DM是以字节或者字符作为单位
SELECT sf_get_length_in_char() 0是字节 1是字符
这个参数是dm实例化的时候就设置好的,所以实例化时需要根据业务来进行case by case
文章
阅读量
获赞