<% try {
String str1=request.getParameter("name");
........................................
String sql="select * from t1 where name like '%"+str1+"%'";
ResultSet rs=stmt1.executeQuery(sql);
%>
姓名 | 性别 | 年龄 |
"+rs.getString("name")+" | "+rs.getString("sex")+" | "+rs.getString("age")+" |
<%
}
else{out.print("该数据不存在");}
conn.close();
} catch(Exception e) {}
%>
代码就是这样的,当输入某个关键字进行查询时,其实在数据库里有好几个记录都有这个关键字,可是呈现出来的却只有一个记录,就是在表中排在第一的那个记录。其他记录都不能呈现出来。请问如何解决这个问题?
你可以通过获得先获得 结果条目数 然后判断是否有有数据。
最后在做出相应的输出处理。
判断数据的条目:
方法一:默认的 ResultSet 对象不可更新,仅有一个向前移动的游标。你可以在Statement构造时,声明ResultSet对象的游标可以前后移动。
通过移动游标,获取ResultSet的条目数。
方法二:执行一个相同SQL的SUM操作,获取数据的条目。
因为你用的是if不是while来处理 数据库返回的结果
[code="java"]<%
if(rs.next()) {
out.print("
把if() 改成while就行了
while 才是循环,if只是一个判断。