jsp主次数据显示

时间:2023-02-03 13:42:22

好久没发文章了,今天终于把一个烦了我很多天的问题解决了,好爽,在这里我要感谢PhD(jspjava)这位朋友,这个问题是关于jsp编历两极数据库的问题


这个代码只是读取数据库里面的第一条记录,我要先读一个表A,另外一个表的数据要根据这个表A读出来的字段才能读取数据,也就是while里面还有while,数据库里有很多条记录,但是只是显示第一条。我起初的代码如下:

Connection con;
Statement sql,sql2;
ResultSet rs,rs1;
int param,num;
String param2;
try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
   }
catch(ClassNotFoundException e) {}
try{con=DriverManager.getConnection("jdbc:odbc:student","","");
     sql=con.createStatement();
     rs=sql.executeQuery("select * from student_credit_record order by student_id");
  while(rs.next())
  {
     param=rs.getInt("student_id");
  param2=rs.getString(2);
  String student_sex=rs.getString(3);
  int credit_degree=rs.getInt("credit_degree");
  
     out.print("<tr>");
  out.print("<td><font color=#990033><a href=stu_info.jsp?id="+param+">"+param2+"</a></font></td>");
  out.print("<td>"+param+"</td>");
  out.print("<td>"+student_sex+"</td>");
  out.print("<td><font color=#990033>"+credit_degree+"</font></td>");
  sql2=con.createStatement();
  String sqlstring="select count(*) from bad_record where student_id="+param;
     rs1=sql2.executeQuery(sqlstring);
  while(rs1.next())
  {  //将游标移动到第一条记录,这里总共也才一条记录
    num=rs1.getInt(1);
    out.print("<td>"+num+"(条)"+"</td>");
        }
  //out.print("<td>"+"2"+"</td>");
  out.print("<td><a href=stu_modify.jsp?id="+param+"&nid="+param2+">"+"修改"+"</a>"+"|"+"<a href=stu_del.jsp?id="+param+"&nid="+param2+">"+"删除"+"</a></td>");
     out.print("</tr>"); 
  
 }
  con.close();
 }
  catch(SQLException e6)
  {
 // out.print(e6);
  }

最后这个朋友帮我解决的办法是:要定义两个statement 一个sql,另一个sql2
这样就可以运行程序了,csdn上很多人都还不知道这个问题呢(jsp这个方面)