在数据查询时,java的ResultSet接口的public String getString(String columnName)方法抛出异常。
案例分析思路:
应用抛出异常,首先要看应用是否有不合理的地方,比如查询的列值类型是不是有错误,或是没有列供getString来检索值。在都排除了上述问题后,决定写Test测试类。
写个简单的测试类来实现应用中一样的查询,看是否也会报异常。这个方法很直接,可以说花很少的代价就可以得到足够的信息,具体的执行方法可以先在IDE中编写好测试类,然后通过粘贴拷贝将测试类写到远程机器上。
发现测试类也抛出了异常。在确定不是应用的同时,可以认定为是数据的问题。将查询的表中所有数据都删除,再执行测试类,发现没有任何异常。最后锁定为是数据的问题。在询问了数据插入人员后,原来这条数据是开发人员手动insert到表中,所有可以能字符集转换的问题。于是通过将出问题的数据行将其中的中文删除,只留英文,因为英文不存在编码问题,测试通过。
最后确定为插入数据时没有指定数据库使用的字符集,应用使用LANG=zh_CN 和DB2CODEPAGE= 1386的设置,这样中文就不会产生乱码问题。
另,此类问题可以简单的使用DB2提供的函数hex来检查,中文是否是正确的字符集。
分享到:
相关推荐
DB2 GBK 字符集解决方案 实践案例
DB2字符串处理 字符串处理 db2 函数
db2里对字符串处理的函数大全,涵盖常见和不常见的很多函数
主要记录在工作中,初识db2遇到的一些问题 db2字符串分隔,函数,过程的使用
db2启动错误db2启动错误db2启动错误db2启动错误db2启动错误db2启动错误
DB2错误代码 DB2 SQL ERRORCODE
DB2 错误代码大全——SQLSTATE 消息 08连接异常 表7 09触发操作异常 表8 0A功能部件不受支持 表9 0D目标类型规范无效 表10
db2字符串实用函数汇总,附加列子,实用易懂
db2错误代码大全.docx,包含常见的DB2数据库的错误代码及相应的错误中文信息。
db2错误码一览表 快速定位DB2错误信息
--DB2数据库系统查询语句 1、查询数据库中某个字段所在表: select tabname from syscat.columns where colname = 'COLNAME' +331 01520 不能被翻译的字符串,因此被设置为NULL +339 01569 由于与DB2 2.2版本的子...
db2错误代码的原因,该文档已收集了尽可能多的错误解释,希望适合大家的需求
DB2错误代码大全: DB2 SQLSTATE 消息 异常 SQLSTATE 消息 列示 SQLSTATE 及其含义。SQLSTATE 是按类代码进行分组的;对于子代码,请参阅相应的表。
DB2错误码大全 DB2错误码大全 DB2错误码大全
DB2 错误代码大全,DB2 错误代码大全,DB2 错误代码大全
db2 的错误代码,错误信息对照。方面以后查询 如:-407 23502 不能把NULL值插到定义为NOT NULL的列中 -470 39002 指定了NULL参数,但是该例程却不支持NULL
便于db2的错误查询
DB2错误代码大全,所有db2出现错误的代码基本上都能在本文档中查询到,中文版
db2 代码错误对照表db2 代码错误对照表db2 代码错误对照表db2 代码错误对照表db2 代码错误对照表db2 代码错误对照表db2 代码错误对照表db2 代码错误对照表
DB2错误代码对照表,让你更方便快捷的解决DB2的问题。