【问题标题】:JDBC Application - Column Index out of range, 0 < 1 [duplicate]JDBC 应用程序 - 列索引超出范围,0 < 1 [重复]
【发布时间】:2021-01-12 15:59:00
【问题描述】:

我有这段代码:

try{
            Class.forName("com.mysql.jdbc.Driver");
            Connection con= DriverManager.getConnection(
                    "jdbc:mysql://127.0.0.1:3306/test?characterEncoding=utf8","root","Icdjoil100"","root","Iconofcoil100");
            Statement stmt=con.createStatement();
            ResultSet rs=stmt.executeQuery("select user_id , user_name from t_user");
            while(rs.next()) {
                System.out.println(rs.getInt(0));
            }
            con.close();
        }catch(Exception e){
            e.printStackTrace();
        }

但运行示例时出现此错误:

java.sql.SQLException: Column Index out of range, 0 < 1.
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:910)
    at com.mysql.jdbc.ResultSet.checkColumnBounds(ResultSet.java:684)
    at com.mysql.jdbc.ResultSet.getInt(ResultSet.java:2621)
    at Test.main(Test.java:20)

【问题讨论】:

    标签: java mysql database jdbc resultset


    【解决方案1】:

    JDBC(类似于 SQL)是基于 1 的 API。 IE。列索引从 1 开始。写入:

    rs.getInt(1);
    

    ResultSet.getInt()

    columnIndex - 第一列为 1,第二列为 2,...

    【讨论】:

      猜你喜欢
      • 2013-12-24
      • 1970-01-01
      • 1970-01-01
      • 2014-08-25
      • 1970-01-01
      • 2019-09-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多