whan_cu的ChinaUnix博客calm365.blog.chinaunix.net
whan_cu
全部博文(89)
C语言(10)
数据库设计工具(13)
MySQL(0)
SQLServer(2)
oracle(5)
DB2(20)
2013年(1)
2012年(1)
2011年(8)
2010年(45)
2009年(34)
xuequans
浪花小雨
7158798
legend81
afiua
cu博客助
vfhky
cangzhou
cu官方博
分类:
2010-09-29 15:36:47
select jybs_mx from mq_agntinfo fetch first 1 rows only with ur;
结果
JYBS_MX0会员降级
2、连接本地数据库,通过远程联合数据库对象查询同一个表
结果却是
JYBS_MX0会员降
和远程数据库相比,少了一个汉字
3、通过以下SQL语句
select jybs_mx,length(trim(jybs_mx))from mq_agntinfofetch first 1 rows onlywith ur;
连接远程数据库查询结果是:
JYBS_MX 20会员降级 9
而连接本地数据库查询的结果却是:
JYBS_MX 20会员降 10
本地数据库把1个汉字作为3个字节处理,而远程数据库把1个汉字作为2个字节处理,而字段 JYBS_MX 的数据类型是varchar(10),超过部分被截掉了。
4、分别查看远程数据库和本地数据库的字符集
原来远程数据库的字符集是“GBK”,而本地数据库的字符集是“UTF-8”
结论:DB2数据库字符集为UTF-8时,1个汉字占3个字节
5、简单的解决办法:
把本地的昵称对应的字段类型长度改大,问题解决。
上一篇:DB2 rollforward 命令使用详解
下一篇:db2relocatedb修改数据库实例名
登录 注册