Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1298399
  • 博文数量: 287
  • 博客积分: 11000
  • 博客等级: 上将
  • 技术积分: 3833
  • 用 户 组: 普通用户
  • 注册时间: 2007-08-16 08:43
文章分类
文章存档

2013年(15)

2012年(17)

2011年(17)

2010年(135)

2009年(85)

2008年(18)

分类: 系统运维

2009-09-25 13:11:11

    可以查看任何一本有关ibm db2的文章或e书,我们都可以发现,ccsid=65535不代表某个国家的双字节字符集。在ccsid对照国家表中,根本找不到ccsid=65535。但是,在400下,ccsid=65535就有它的特殊含义,当需要显示、转换,或程序处理遇到双字节字符集代码时,ccsid=65535就体现它的含义了,即发生上述情况,系统会自动寻找下一级的ccsid代码,再进行处理。
   
    如windows终端显示400下pf内容时,如果400系统设置ccsid=65535,这时就要查看这个pf的ccsid是否与windows下的这个odbc对这个pf的ccsid是否一致。只有一致才能正常显示(还有其它特例,稍后再说)。如果这是把qsysval设成ccsid=中文的ccsid,对这个单独的显示,没有问题,可以正常显示。但是,因为400下,不一定所有的pf的ccsid都是一致的,这样就会造成其它pf的显示错误,和运行错误。
    windows下对应400的odbc设置中的ccsid与400下要查看的pf的ccsid一致就可以了。如果一致还会出现乱码,就是windows下的ca版本与400支持的ca版本不一致。这时,最好降低windows下的ca版本。
    所以,对qsysval的ccsid=65535值,不要轻易改动。
    对数据而言,ccsid的层次,从高到低,qsysval、pf、field;
 
    对多语言环境。搞明白ccsid层次关系,就可以轻易设置了。
 
    另外,还有个job的ccsid层次关系。我整理后,再补充。
阅读(2479) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~