java.sql.SQLException: After end of result set

数据库驱动是正确了的就是下面这段代码有问题求大神看看本来有两条数据但只能打印一条数据出来publicstaticvoidmain(String[]args){String... 数据库驱动是正确了的 就是下面这段代码有问题 求大神看看本来有两条数据但只能打印一条数据出来
public static void main(String[] args) {

String sql="select GoodsID, GoodName,GoodsNumber,GoodsPrice,GoodsDiscrible,GoodsLevel,state, GoddsTypeCoding,GoodsTypeName from tb_goods,tb_goodstype where tb_goods.GoodsTypeID=tb_goodstype.GoodsTypeID and GoodsTypeName='"+"传奇系列"+"'";
//System.out.println(series+"444这是传过来的值");
ResultSet set=ConnectionMysql.getResultSet(sql);
try {
while(set.next()){
System.out.println(set.next()+"===========查看这个是否有值");
System.out.println("1111111111进入循环遍历");
String GoodName=set.getString("GoodName");
System.out.println(GoodName);
String GoodsNumber=set.getString("GoodsNumber");
String GoodsLevel=set.getString("GoodsLevel");
System.out.println(GoodsLevel);

//创建一个集合将这些数据装入

}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

报的错误
11111进入数据库连接
true===========查看这个是否有值
1111111111进入循环遍历
拉菲罗斯柴尔德传奇梅多克2009年份
1
011121211001
false===========查看这个是否有值
1111111111进入循环遍历
java.sql.SQLException: After end of result set
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1074)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:988)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:974)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:919)
at com.mysql.jdbc.ResultSetImpl.checkRowPos(ResultSetImpl.java:854)
at com.mysql.jdbc.ResultSetImpl.getStringInternal(ResultSetImpl.java:5772)
at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5692)
at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5732)
at com.lafite.db_conection.ConnectionMysql.main(ConnectionMysql.java:69)
展开
 我来答
小传君1220
2014-06-09 · 超过61用户采纳过TA的回答
知道答主
回答量:131
采纳率:0%
帮助的人:145万
展开全部
<td height="27" align="center" bgcolor="#FFFFFF"> <%=name %></td>
<td align="center" bgcolor="#FFFFFF"> <%=rs.getInt("fileSize") %></td>
<td align="center" bgcolor="#FFFFFF">

rs.getInt(),rs结果集已经关闭,再引用才报的错.可以在上面定义变量接收.
请采纳。
匿名用户
2014-06-09
展开全部
set.next() 在一个循环里调用了两次,导致在最后一条调用的时候越界

把 System.out.println(set.next()+"===========查看这个是否有值"); 删了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式