最后的16分了!希望您不要嫌少,帮我一下好么?

HERO2008 2001-09-30 09:09:12

ResultSet rs0=cnstm.executeQuery("select * from problem");
rs0.last();
int rows0=rs0.getRow();
rs0.beforeFirst();
while(rs0.next())
{
out.print("太上老君");
out.print("<table>");
String thh=rs0.getString(1);
out.print("<tr><th colspan=2>"+rs0.getString(2)+"</th><tr>");
out.print("<tr><td>");
/* ResultSet rs1=cnstm.executeQuery("select * from ans where th="+thh);
rs1.last();
int rows1=rs1.getRow();
rs1.beforeFirst();
for(int y=1;y<=rows1;y++)
{
rs1.next();
out.print("<p><input type=radio name=R0 value="+rs1.getString(2)+"></p>");
}
*/////请问为什么上面这段注释一旦加进程序,就会在第二次进入while循环时出错呢?我在那里用rs.next();有什么错呢?谢谢您了!
out.print("</td></tr>");
out.print("<tr><td><input type=submit name=submit0 value=提交></td></tr>");
out.print("</table>");

//rs1.close();
}
...全文
37 点赞 收藏 3
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
HERO2008 2001-09-30
谢谢二位了
我这最后的16分都给你们了!!
回复
这样试一下吧:
ResultSet rs1=cnstm.executeQuery("select * from ans where th="+thh);
//rs1.last();
//int rows1=rs1.getRow();
//rs1.beforeFirst();
//for(int y=1;y<=rows1;y++)
while(rs1.next())
{
//rs1.next();
out.print("<p><input type=radio name=R0 value="+rs1.getString(2)+"></p>");
}
如果不行,请再建一cnstm,例如cnstm2,使rs0和rs1不使用同一个Statement,即把rs1改成
ResultSet rs1=cnstm2.executeQuery("select * from ans where th="+thh);

jdbc就是这样的,经常有莫名其妙.

另外,不知th字段的datatype是什么,如果不是数字型,建议SQL语句改成
("select * from ans where th='"+thh+"'");
回复
lci21 2001-09-30
出什么错?怎么不粘出来?
回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2001-09-30 09:09
社区公告
暂无公告