简体   繁体   English

在DB2中执行查询时,线程“ main”中的异常java.lang.ArrayIndexOutOfBoundsException

[英]Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException while executing query in DB2

I have the following piece of code: (basically it's a JAVA-DB2 Connectivity test program) 我有以下代码:(基本上是JAVA-DB2 Connectivity测试程序)

import java.io.IOException;
import java.sql.Connection; 
import java.sql.DriverManager; 
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class TestDB22
{
     public static void main(String  rgs[]) throws IOException, ClassNotFoundException, SQLException 
     { 
        Class.forName("COM.ibm.db2os390.sqlj.jdbc.DB2SQLJDriver");
        Connection  con = DriverManager.getConnection("jdbc:db2:rajdb","db2admin","db2admin"); 
        System. out .println( "From TestDB22, connection obtained " );

        Statement st=con.createStatement();
        ResultSet rs = st.executeQuery( "select * from libids" ); 
        while( rs.next())
        {
            System.out.println(rs . getString(2));

        }

     } 
}

I get the following error: 我收到以下错误:

From TestDB22, connection obtained 从TestDB22,获得连接

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException at java.lang.System.arraycopy(Native Method) at com.ibm.db2.jcc.t4.ab.a(ab.java:103) at com.ibm.db2.jcc.t4.ab.a(ab.java:151) at com.ibm.db2.jcc.uw.UWReply.b(UWReply.java:62) at com.ibm.db2.jcc.t4.ab.c(ab.java:243) at com.ibm.db2.jcc.t4.ab.c(ab.java:354) at com.ibm.db2.jcc.t4.ab.v(ab.java:1139) at com.ibm.db2.jcc.t4.db.c(db.java:52) at com.ibm.db2.jcc.t4.tc(t.java:44) at com.ibm.db2.jcc.t4.sb.i(sb.java:147) at com.ibm.db2.jcc.am.km.gb(km.java:1985) at com.ibm.db2.jcc.am.km.a(km.java:2866) at com.ibm.db2.jcc.am.km.a(km.java:628) at com.ibm.db2.jcc.am.km.executeQuery(km.java:612) at TestDB22.main(TestDB22.java:16) com.ibm.db2处java.lang.System.arraycopy(native Method)处的线程“ main”中的java.lang.ArrayIndexOutOfBoundsException com.ibm.db2处com.ibm.db2.jcc.t4.ab.a(ab.java:103)处的异常com.ibm.db2.jcc.uw.UWReply.b(UWReply.java:62)上的com.ibm.db2.jcc.t4.ab.c的.jcc.t4.ab.a(ab.java:151) (ab.java:243)在com.ibm.db2.jcc.t4.ab.c(ab.java:354)在com.ibm.db2.jcc.t4.ab.v(ab.java:1139)在com.ibm.db2.jcc.t4.tc(t.java:44)处com.ibm.db2.jcc.t4的com.ibm.db2.jcc.t4.db.c(db.java:52)。 com.ibm.db2.jcc.am.km.km.gb(km.java:1985)的sb.i(sb.java:147)com.ibm.db2.jcc.am.km.a(km.java: 2866)在com.ibm.db2.jcc.am.km.a(km.java:628)在com.ibm.db2.jcc.am.km.executeQuery(km.java:612)在TestDB22.main(TestDB22 .java:16)

I'm tempted to say that there's a bug in the driver. 我很想说驱动程序中有错误。 Make sure you're using the latest version. 确保您使用的是最新版本。

If that doesn't work, try using a PreparedStatement instead (yes, I know that the query doesn't have any parameters, so please nobody downvote me :) 如果那不起作用,请尝试使用PreparedStatement代替(是的,我知道查询没有任何参数,所以请没人反对我:)

Statement st = con.prepareStatement("select * from libids");
ResultSet rs = st.executeQuery();

Are you really sure you have the right JDBC Driver.... OS390 os390 is pretty old, and was replaced in 2000 or something. 真的确定您拥有正确的JDBC驱动程序吗?... OS390 os390相当老,在2000年左右被替换。 Do you think you should be using the universal type 4 driver: com.ibm.db2.jcc.DB2Driver instead of the os390 specific driver COM.ibm.db2os390.sqlj.jdbc.DB2SQLJDriver ? 您是否认为您应该使用通用4型驱动程序: com.ibm.db2.jcc.DB2Driver而不是os390特定的驱动程序COM.ibm.db2os390.sqlj.jdbc.DB2SQLJDriver

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 线程“main”中的异常 java.lang.ArrayIndexOutOfBoundsException: 7 - Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 7 线程“主”中的异常java.lang.ArrayIndexOutOfBoundsException:6 - Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException: 6 线程“main”中的异常java.lang.ArrayIndexOutOfBoundsException:2 - Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException:2 线程“主”中的异常java.lang.ArrayIndexOutOfBoundsException:5 - Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException: 5 线程“主”中的异常java.lang.ArrayIndexOutOfBoundsException: - Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException: 线程“主”中的异常java.lang.ArrayIndexOutOfBoundsException:-1 - Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException: -1 线程“ main”中的异常java.lang.ArrayIndexOutOfBoundsException 4 - Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException 4 线程“main”中的异常 java.lang.ArrayIndexOutOfBoundsException - Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException 线程“ main”中的异常java.lang.ArrayIndexOutOfBoundsException:3 - Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException: 3 线程“ main”中的异常java.lang.ArrayIndexOutOfBoundsException:8 - Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException: 8
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM