【发布时间】:2016-08-17 10:53:20
【问题描述】:
我的团队表 id 和团队名称中有 2 列
这是我的方法
public List<String> getallteams() {
Connection conn = null;
ArrayList users = new ArrayList();
List<String> teams = new ArrayList();
try {
conn = DBConnection.openConnection();
String sql = " SELECT * FROM teams ";
PreparedStatement stmt = conn.prepareStatement(sql);
ResultSet rs = stmt.executeQuery();
while (rs.next()) {
String t1 = rs.getString(1);
String t2 = rs.getString(2);
String t3 = rs.getString(3);
String t4 = rs.getString(4);
String t5 = rs.getString(5);
String t6 = rs.getString(6);
String[] finalresult1 = {t1,t2,t3,t4,t5,t6 };
teams = Arrays.asList(finalresult1);
System.out.println(teams.get(1));
}
} catch (SQLException ex) {
Logger.getLogger(UsersDaoImp.class.getName()).log(Level.SEVERE, null, ex);
} finally {
DBConnection.closeConnection(conn);
}
return teams;
}
我是 mysqli 新手,所以在这里有点挣扎
但它给了我 java.sql.SQLException: Column Index out of range, 2 > 1 error
【问题讨论】:
-
你需要学会调试你的代码,然后你可以逐行单步调试它,看看发生了什么。您的表中没有 6 列。这是肯定的。你的代码有很多问题。
-
您的表格没有您的代码建议的 6 列。实际上,根据错误消息,该表似乎只有 one 列。显示表定义并解释您要完成的任务。