对DB2表的Select查询在java中返回一个类似箭头的符号,该符号引发异常?
我试图从DB2表中读取一个名为EMP_NAME的列。它对大多数记录都可以正常工作,但对catch块中的某些记录会抛出异常 例如,我包含了一个字符串图像,其中包含一个特殊字符,我认为这是导致错误发生的原因。我不知道如何在Java端解决这个问题,因为resultSet.getString(“EMP_NAME”);抛出直接错误并且无法转换它?我可以将箭头转换为空白,但我不认为这是可能的对DB2表的Select查询在java中返回一个类似箭头的符号,该符号引发异常?,java,db2,Java,Db2,我试图从DB2表中读取一个名为EMP_NAME的列。它对大多数记录都可以正常工作,但对catch块中的某些记录会抛出异常 例如,我包含了一个字符串图像,其中包含一个特殊字符,我认为这是导致错误发生的原因。我不知道如何在Java端解决这个问题,因为resultSet.getString(“EMP_NAME”);抛出直接错误并且无法转换它?我可以将箭头转换为空白,但我不认为这是可能的 while (resultSet.next()) { String NA
while (resultSet.next())
{
String NAME = resultSet.getString("EMP_NAME");
}
其中一个resultSet.getString(“EMP_NAME”);返回DB2数据库中的以下字符串注意,有一个类似于用红色i-beleive标记的箭头的符号,导致某些记录抛出以下异常
错误代码:
from the method getDataFromEMPHCForEmployeeDetails()----- com.ibm.db2.jcc.am.SqlException: [jcc][t4][1065][12306][3.63.123] Caught java.io.CharConversionException. See attached Throwable for details. ERRORCODE=-4220, SQLSTATE=null
at com.ibm.db2.jcc.am.fd.a(fd.java:663)
at com.ibm.db2.jcc.am.fd.a(fd.java:60)
at com.ibm.db2.jcc.am.fd.a(fd.java:112)
at com.ibm.db2.jcc.am.ic.a(ic.java:2820)
at com.ibm.db2.jcc.am.ic.p(ic.java:521)
at com.ibm.db2.jcc.am.ic.N(ic.java:1558)
at com.ibm.db2.jcc.am.vn.e(vn.java:1147)
at com.ibm.db2.jcc.am.vn.getString(vn.java:1122)
at com.ibm.db2.jcc.am.vn.getString(vn.java:1698)
at CreateChart.getDataFromEMPHCForEmployeeDetails(CreateChart.java:330)
at CreateChart.iterateDirectReportNamesFromArrayList(CreateChart.java:594)
at CreateChart.getDataFromEMPHCForDirectReport(CreateChart.java:295)
at CreateChart.iterateSecondLineManagerNamesFromArrayList(CreateChart.java:562)
at CreateChart.getDataFromEMPHCForSecondLine(CreateChart.java:251)
at CreateChart.iterateThirdLineManagerNamesFromArrayList(CreateChart.java:533)
at CreateChart.getDataFromEMPHCForThirdLine(CreateChart.java:208)
at CreateChart.iterateDirectorNamesFromArrayList(CreateChart.java:506)
at CreateChart.getDataFromEMPHCForDirector(CreateChart.java:168)
at CreateChart.iterateVPNamesFromArrayList(CreateChart.java:472)
at CreateChart.getDataFromEMPHCForVp(CreateChart.java:126)
at CreateChart.iterateFuncVPNamesFromArrayList(CreateChart.java:434)
at CreateChart.getDataFromEMPHCForFuncVp(CreateChart.java:95)
at CreateChart.main(CreateChart.java:613)
Caused by: java.nio.charset.MalformedInputException: Input length = 186
at com.ibm.db2.jcc.am.t.a(t.java:19)
at com.ibm.db2.jcc.am.ic.a(ic.java:2816)
... 19 more
Caused by: sun.io.MalformedInputException
at sun.io.ByteToCharUTF8.convert(Unknown Source)
at com.ibm.db2.jcc.am.t.a(t.java:16)
... 20 more
... 你不确定吗?试着去拿那张唱片。看起来这个字符应该是撇号(
”
),在上下文中(我不知道实际编码的是什么)。如果数据出现问题,是否允许修复数据库?例如,“调用SQLException.getMessage以检索有关问题的特定信息。”