- 论坛徽章:
- 0
|
我安装的Informix 9.4 on Redhat AS 4,环境变量如下:
DB_LOCALE=zh_CN.GB18030-2000; export DB_LOCALE
CLIENT_LOCALE=zh_CN.GB18030-2000; export CLIENT_LOCALE
SERVER_LOCALE=zh_CN.GB18030-2000; export SERVER_LOCALE
DBLANG=zh_CN.GB18030-2000; export DBLANG
客户端连接通过DBRichTool,JDBC,Server Studio连接都可以正常添加、修改使用中文,包括“劼赟”这样的GBK特殊汉字。
但是在服务器上面使用dbaccess时,当时插入的数据【id='x'】可以显示,但是通过DBRichTool,JDBC,Server Studio就是乱码
> select * from t_test;
id 1
title 2????úS?úS
id 2
title 2?
id 3
title hello2???
id cd
title 2??aaaaaaaaaaa
id x
title 测试中文
5 row(s) retrieved.
>
经过测试,使用dbaccess插入的数据编码为UTF-8,在java程序中通过下面转码就可以正常显示了。
String newtext=new String(text.getBytes("GBK"),"utf-8");
在redhat中,LANG参数的确也是zh_CN.UTF-8,为此,我修改了/etc/sysconfig/i18n中的参数
LANG="zh_CN.gbk"
SUPPORTED="zh_CN.gbk:zh_CN:zh:zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"
重启机器之后进入LANG=zh_CN.gbk,这样service --status-all都是乱码了,不管了,启动informix
进入dbaccess后测试结果依然是这样,求教大侠,俺该怎么办才能让dbaccess不使用这个UTF-8呢? |
|