我用的数据库为oracle9i。数据库的字符集设置为:ZHS16GBK。数据库中,一个表中某个字段的内容为繁体字,字段类型为varchar2类型。我用toad8.0去访问数据库的数据时,该记录能够正常的显示繁体字。但是,我用9i带的thin驱动去读数据库的该记录时,就会读出?号。在网上找了很多文章,也没有找到个解决的办法,特来向大家请教!就是用java取到连接后,然后执行查询的SQL。再执行rs.getRecord(i).getString("字段名")这句时,如果该字段的内容全部为中文简体或者是英文,则都正常。但只有是繁体就会出来?号。象这个情况该怎么解决?
这是经验之谈
1.先必须使服务器端的字符集与客户端的字符集一致;
2.加载到ORACLE数据库的数据字符集必须与服务器指定字符集一致
参考:http://www.oracle.com.cn/viewthread.php?tid=15066&highlight=%D7%D6%B7%FB%BC%AF&page=1