如何解决ResultSet不从所选表中返回AV值
我遇到了一些困惑的问题。我已经有了使用SELECT * ...从表中提取数据的简单方法,但是,当对表进行迭代时,它会在遍历该表中的所有条目之前停止迭代。在将行添加到ArrayList时,我已经使用了调试器来消除问题区域。但仍然,它在应该停止之前就停止了。有什么想法吗?
public static ArrayList<Actors> acList() throws Exception {
ArrayList<Actors> acList = new ArrayList<Actors>();
try {
getConnection();
PreparedStatement st = conn.prepareStatement("SELECT * FROM Actors");
ResultSet rst = st.executeQuery();
Actors ac;
while (rst.next()) {
ac = new Actors(rst.getInt("ActorId"),rst.getString("fName"),rst.getString("eName"),rst.getInt("Age"),rst.getInt("NoOfCredits"),rst.getString("Country"));
acList.add(ac);
}
} catch (Exception e) {
}
return acList;
}
解决方法
找到了答案,并在其他人遇到类似问题时发贴。发生的是,我的mysql表中的一行有一个条目(我认为已删除)与我要提取的类型不匹配。列表尝试声明一个int,但该行中的值为varchar。编辑了表格,使其是正确的类型。现在可以使用了^^
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。