2014-05-24 11 views
-2

我想執行下面的代碼,其中包含兩個SQL查詢將在其中執行。我不斷收到SQL異常。代碼在這裏。先謝謝你。如何在我的JSP文件中運行兩個查詢。以下是我的代碼

 <table border="1" width="100%" cellpadding="0" cellspacing="0"> 
     <tr> 
      <th>FileName</th> 
      <th>Ip</th> 
      <th>Date</th> 
      <th>Download</th> 
     </tr> 
     <% 

      Connection con = DbConnector.getConnection(); 
      PreparedStatement pstm = null; 
      String sql = "select * from transaction where  status='Success'"; 
      pstm = con.prepareStatement(sql); 
      ResultSet rs = pstm.executeQuery(); 

      while (rs.next()) {%> 
     <tr> 
      <td><%=rs.getString(2)%></td> 
      <td><%=rs.getString(4)%></td> 
      <td><%=rs.getString(5)%></td> 
      <% 
      PreparedStatement pstm1 = null; 
      String sql2 = "select * from mykeys where FileID = '"+ rs.getString(7).toString() +"'"; 
      pstm1 = con.prepareStatement(sql2); 
      ResultSet rs1 = pstm1.executeQuery(); 

                 if(rs1.getString(2).toString() != null &&  rs1.getString(3).toString() != null){%> 
      <td><a href="FileDownload?ip= <%=rs.getString(4)%>&filename=<%=rs.getString(2)%>">Download</a></td> 
      <%}else{%> 
      <td>Cannot Download</td> 
      <%}%> 
     </tr> 

     <%}%> 
</table> 
+0

javax.servlet.ServletException:java.sql.SQLException中 \t org.apache.jasper.runtime.PageContextImpl.doHandlePageException (PageContextImpl.java:911) \t org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:840) \t org.apache.jsp.report_jsp._jspService(report_jsp.java:200) \t org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) \t javax.servlet.http.HttpServlet.service(HttpServlet.java:722) \t org.apache.jasper.servlet.JspServletWrapper.service (JspServletWrapper.java:419) – user3672391

+0

這是JSP SQL的用處,試試看 –

回答

3

問題出在線以下。很可能由於錯誤,您在獲取數據之前忘記撥打rs1.next()

ResultSet rs1 = pstm1.executeQuery(); 
if(rs1.getString(2).toString() != null && rs1.getString(3).toString() != null) 

應該

ResultSet rs1 = pstm1.executeQuery(); 
if(rs1.next() && rs1.getString(2).toString() != null && rs1.getString(3).toString() != null) 

請看看JDBC Basics在那裏你會學習JDBC API的基礎知識。


注:

查找示例代碼這裏JSP JSTL

相關問題