2010-09-14 3 views
-1

Я получаю except1 о запуске этого code.Please увидеть, если есть какая-то ошибка в блоке Ьги ....необходимой помощи (corejava)

Try 
{ 
    pst=con.prepareStatement("SELECT Name,Roll,Semester,Address,Phoneno," + 
     "E-mailId,Gender,DOB,Result FROM stud WHERE Roll = ?"); 
    pst.setString(1,s2); 
    ResultSet rs=pst.executeQuery(); 
    while(rs.next()) 
    { 
     s2=rs.getString("Roll"); 
     String s1=rs.getString("Name"); 
     String s3=rs.getString("Semester"); 
     String s4=rs.getString("Address"); 
     String s5=rs.getString("Phoneno"); 
     String s6=rs.getString("E-mailId"); 
     String s7=rs.getString("Gender"); 
     String s8=rs.getString("DOB"); 
     String s9=rs.getString("Result"); 
     t1.setText(s1); 
     t2.setText(s2); 
     t3.setText(s3); 
     t4.setText(s4); 
     t5.setText(s5); 
     t6.setText(s6); 
     t7.setText(s7); 
     t8.setText(s8); 
     t9.setText(s9); 
    } 
    con.commit(); 
    con.close(); 
} 
catch(SQLException e2) 
{ 
    System.out.println("except1"); 
} 
+0

Типовая SQLException может быть любое количество вещей от проблем соединения, ошибок SQL. вам нужно распечатать исключение. попробуйте e2.printStackTrace() после вашей строки System.out. Отредактируйте этот стек в свой вопрос, и вы получите лучший ответ от сообщества. – Sean

+0

на боковой ноте, переместите ваш con.close() в блок finally {} вашего try/catch. Таким образом, если исключение выбрано из вышеуказанного блока, вы всегда будете закрывать соединение. – Sean

+0

Если вы измените 'System.out.println (" except1 ")' на 'e2.printStackTrace()', вы получите больше информации о том, что это проблема. – msandiford

ответ

0

нюанс: мой Java ржаво -

  1. не знает, если имена полей могут содержать hypens, зависит от базы данных
  2. печати точного исключения, которое вы получаете
  3. почему вы делаете комлинк это на SELECT?
+1

Do e2.printStackTrace(); в блоке исключений. –

0

Укажите, что тип данных «Roll» Atrribute в базе данных является символом (n). если оно целое/число, то используйте это pst.setInt (1, Integer.parseInt (s2));

0

Убедитесь, что вы используете VARCHAR тип данных для всех атрибутов в базе данных. Если это не так, измените код в соответствии с этими типами данных. И трассировка стека исключений (e2.printStackTrace()) в блоке catch для получения точной причины исключения. Благодаря

0
Try 
    { 
     pst=con.prepareStatement("SELECT Name,Roll,Semester,Address,Phoneno," + 
      "E-mailId,Gender,DOB,Result FROM stud WHERE Roll = ?"); 
     pst.setString(1,s2); 
     string s2 = '123123'; //pass the required value to Query 
     ResultSet rs=pst.executeQuery(); 
     while(rs.next()) 
     { 
      //String s2=rs.getString("Roll"); 
      String s1=rs.getString("Name"); 
      String s3=rs.getString("Semester"); 
      String s4=rs.getString("Address"); 
      String s5=rs.getString("Phoneno"); 
      String s6=rs.getString("E-mailId"); 
      String s7=rs.getString("Gender"); 
      String s8=rs.getString("DOB"); 
      String s9=rs.getString("Result"); 

      t1.setText(s1); 
      t2.setText(s2); 
      t3.setText(s3); 
      t4.setText(s4); 
      t5.setText(s5); 
      t6.setText(s6); 
      t7.setText(s7); 
      t8.setText(s8); 
      t9.setText(s9); 
     } 
     con.commit(); // use commit only when you are doing create/update operations 
     con.close(); 
    } 
    catch(SQLException e2) 
    { 
     System.out.println("Error Information"); 
     e2.printStackTrace();// this method display the error information 
    } 
Смежные вопросы