大家帮我看看这条显示标题的语句为何不对
<%
String id = request.getParameter("id");
ResultSet rs05=database.executeQuery("select * from news where id='"+id+"'");
out.println ("<center>"+rs05.getString("title")+"</center>");
rs05.close();
%>
源码如上,问题就出在out.println ("<center>"+rs05.getString("title")+"</center>");这条语句上,如果我将代码改为out.println("字符串")这样的格式就一切没事,但我觉得上面的显示语句应该没错啊!不知为何却总出错,哪位帮我看看错在哪儿?我改为out.println("+rs05.getString("title")+")也是出错。
问题点数:0、回复次数:8Top
1 楼dkmilk(迪克牛奶____来一杯?)回复于 2003-09-01 14:51:09 得分 0
<%
String id = request.getParameter("id");
ResultSet rs05=database.executeQuery("select * from news where id='"+id+"'");
while(rs05.next()){
out.println ("<center>"+rs05.getString("title")+"</center>");
}
rs05.close();
%>
Top
2 楼zwxu(zwxu)回复于 2003-09-01 14:51:44 得分 0
检查一下rs05中是否检索出记录,如果有,先rs05.first(),然后取值,或是sql语句改为select title from。。。。。Top
3 楼my3b(重阳公子)回复于 2003-09-01 15:21:01 得分 0
按照dkmilk的写法修改了一下,运行正常了,但我又增添了其他字段的内容后就不行了,源码如下:
<%
String id = request.getParameter("id");
ResultSet rs05=database.executeQuery("select * from news where id='"+id+"'");
while(rs05.next()){
out.println ("<center>"+rs05.getString("title")+"</center>");
out.println ("<br><br><center><font color=#999999>发表日期:
"+rs05.getString("createtime")+"; 阅读次数:
"+rs05.getString("click")+"</font></center>");\
out.println ("<hr size=1 color=#808080 width=98%>");
out.println ("+rs05.getString("text")+");
}
rs05.close();
%>
运行时错误,还望能再予指教。
另外,还有一点不明白,这while(rs05.next()){的作用是移动到下一行,但我现在只是根据id号来获取一行记录呀,为何这里要用上while(rs05.next()){呢?不明白,还望也能一并指点一下好吗?Top
4 楼dkmilk(迪克牛奶____来一杯?)回复于 2003-09-01 15:54:16 得分 0
取得的一个记录也要next,
其它报错的信息发出来。Top
5 楼mountsnow()回复于 2003-09-01 16:05:19 得分 0
如果觉得while (rs.next()) 不可理解,一条记录用if (rs.next())好了
ResultSet所取出的结果集的rs指针处于第一条记录的上方,所以即使只有一条记录也要next一下,如果next不了,说明没有记录哦Top
6 楼my3b(重阳公子)回复于 2003-09-01 16:27:39 得分 0
你好,还在线吗?我将代码修改如下:
<%
String id = request.getParameter("id");
ResultSet rs05=database.executeQuery("select * from news where id='"+id+"'");
while(rs05.next()){
out.println ("<center>"+rs05.getString("title")+"</center>");
out.println ("<br><br><center><font color=#999999>发表日期:
"+rs05.getString("createtime")+"; 阅读次数:
"+rs05.getString("click")+"</font></center>");
out.println ("<hr size=1 color=#808080 width=98%>");
out.println (""+rs05.getString("text")+"");
}
rs05.close();
%>
现在就剩最后一个问题了,即out.println ("<hr size=1 color=#808080 width=98%>");这一句不行,其余的全部正常了,为何这句不行呢?是不是width=98%这里有个百分号的原因哪,应该如何改写呢?
另外,我还想加上浏览次数增加功能,应如何写才对呢?再烦指点,谢谢。Top
7 楼my3b(重阳公子)回复于 2003-09-01 16:43:41 得分 0
out.println ("<hr size=1 color=#808080 width=98%>");这句的witdh=98%应该如何改写呢?哪位给指点一下。Top
8 楼zengchangliu(程序人生)回复于 2003-09-01 17:21:29 得分 0
你取出来的可是一个记录集呀Top




