设为首页 收藏本站
查看: 804|回复: 0

[经验分享] DB2字符集,查询中文错误

[复制链接]

尚未签到

发表于 2016-11-15 09:50:20 | 显示全部楼层 |阅读模式
  DB2字符集,查询中文错误
  
在数据查询时,java的ResultSet接口的public String getString(String columnName)方法抛出异常。
  案例分析思路:
  应用抛出异常,首先要看应用是否有不合理的地方,比如查询的列值类型是不是有错误,或是没有列供getString来检索值。在都排除了上述问题后,决定写Test测试类。
  写个简单的测试类来实现应用中一样的查询,看是否也会报异常。这个方法很直接,可以说花很少的代价就可以得到足够的信息,具体的执行方法可以先在IDE中编写好测试类,然后通过粘贴拷贝将测试类写到远程机器上。
  发现测试类也抛出了异常。在确定不是应用的同时,可以认定为是数据的问题。将查询的表中所有数据都删除,再执行测试类,发现没有任何异常。最后锁定为是数据的问题。在询问了数据插入人员后,原来这条数据是开发人员手动insert到表中,所有可以能字符集转换的问题。于是通过将出问题的数据行将其中的中文删除,只留英文,因为英文不存在编码问题,测试通过。
  最后确定为插入数据时没有指定数据库使用的字符集,应用使用LANG=zh_CN 和DB2CODEPAGE= 1386的设置,这样中文就不会产生乱码问题。
  另,此类问题可以简单的使用DB2提供的函数hex来检查,中文是否是正确的字符集。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-300619-1-1.html 上篇帖子: birt db2 查不到结果集 报错 下篇帖子: java定时器访问db2数据库
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表