Чтение данных из базы данных

0

В моей программе у меня есть пользователь, который вводит номер своего билета в форму html, которая подключается к странице jsp, которая должна получать информацию из базы данных и заполнять ее в созданной нами таблице. Вместо этого я получаю только распечатку из заголовка, который я сделал, и форму с кнопкой вниз. Он выводит код ошибки, найденный в инструкции catch. Может кто-нибудь помочь мне выяснить, как решить эту проблему. Некоторое время я перепутал код. Пожалуйста помоги?

Большое спасибо. Это последний шаг в моем проекте...

<HTML>
 <HEAD><TITLE>Ticket Information</TITLE></HEAD>
 <BODY>

 <p>Ticket Information
<%@ page import="java.sql.*" %>
<TABLE BORDER=1 width="75%">
<TR><TH>Ticket</TH><TH>Date</TH><TH>Equipment</TH><TH>Description</TH><TH>Employee</TH><TH>Technician</TH></TR>
<%
  Connection con = null;
  Statement st = null;
  ResultSet rs = null;
  String tix = request.getParameter("Enter Ticket Number");
  String ticketlkup;


  try 
  {
    //load the Driver
    Class.forName("com.mysql.jdbc.Driver").newInstance();

    //Create a connection to the "emp" database
    con = DriverManager.getConnection("jdbc:mysql://localhost/helpdesk?user=root&password=password");

    //Create a Statement object
    st = con.createStatement();

    //Create a ResultSet object and store the results of the query execution
    rs = st.executeQuery("select * from ticket1 where t_id= " + tix +";");




%>
<TR><TD><%= rs.getString("t_id") %></TD>
<TD><%= rs.getString("t_date") %></TD>
<TD><%= rs.getString("t_equipment") %></TD>
<TD><%= rs.getString("t_descript") %></TD>
<TD><%= rs.getString("emp_id") %></TD>
<TD><%= rs.getString("tech_id") %></TD>
</TR>



<%
  } //end of try block
  catch (java.sql.SQLException ex) 
  {
    ex.printStackTrace();
%>
</TABLE>
Ooops, something bad happened:
<%
  } //end of catch block 
  finally
  {
    if (rs != null) rs.close();
    if (st != null) st.close();
    if (con != null) con.close();
  } //end of finally block

%>

</p>

<FORM method="post" action="http://localhost:8080/finalproject/helpdeskhome.html" >
<p>Click on the button to go back to the main page </p>
<button type="submit">Home</button>

</FORM>
</BODY>
</HTML>
  • 0
    в чём ошибка при попытке бросить блок?
  • 0
    пожалуйста, оставьте свои ошибки ..
Теги:
jsp

1 ответ

0

Прежде чем вы начнете использовать свой набор результатов, вам нужно вызвать rs.next() потому что, когда вы только что выполнили запрос, вы еще не rs.next() в первую строку. rs.next() очевидно, вернет false если нет строк (или строк нет).

  try
  {
    ...
    rs = st.executeQuery("select * from ticket1 where t_id= " + tix +";");
    if(rs.next())
    {
   %>
    <TR><TD><%= rs.getString("t_id") %></TD>
    <TD><%= rs.getString("t_date") %></TD>
    <TD><%= rs.getString("t_equipment") %></TD>
    <TD><%= rs.getString("t_descript") %></TD>
    <TD><%= rs.getString("emp_id") %></TD>
    <TD><%= rs.getString("tech_id") %></TD>
    </TR>
  <%
    } //end of if
    else
    {
        out.print("<TR><TD colspan='6'>No Rows</TD></TR>");
    }
  } //end of try block

Ещё вопросы

Сообщество Overcoder
Наверх
Меню