2012-10-06 1 views
0

Je reçois une erreur dans laquelle il est dit SQL Exception: java.sql.SQLException: Aucune donnée trouvée, je ne peux pas trouver le problème ici. s'il vous plaît aidez-moi, désolé de demander.Exception SQL: java.sql.SQLException: Aucune donnée trouvée

try{ 
     Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
    String url = "jdbc:odbc:ict11"; 
    Connection con = DriverManager.getConnection(url); 
    Statement statement = con.createStatement(); 
     statement.executeUpdate("DELETE from Employee where EmployeeID ="+txtId.getText()+""); 
     statement.close(); 
    con.close(); 
    JOptionPane.showMessageDialog(rootPane, "Successfully Deleted"); 
    } 
     catch(Exception e){ 
     JOptionPane.showMessageDialog(null, e); 

    } 
+1

Est-ce que les données que vous essayez de supprimer existe ?? Mais en réalité cela aussi ne devrait pas jeter une exception .. –

+0

quel SGBD utilisez-vous? – Vikdor

+0

vous utilisez le pilote jdbc-odbc, pas sûr, mais vérifiez ce [lien] (http://stackoverflow.com/questions/9498231/java-sql-sqla-ception-no-data-found). Ça pourrait être utile. –

Répondre

1

Je peux penser à deux questions

  1. Cela pourrait être à cause des espaces blancs inutiles qui getText() ne supprime pas. Essayez txtId.getText().trim()

  2. L'URL peut être erronée.

En outre, procédez comme suit pour améliorer le code.

  1. Imprimer pile complète trace
  2. Utilisation PreparedStatement au lieu de déclaration.
0
statement.executeUpdate("DELETE from Employee where EmployeeID ="+txtId.getText()+""); 

essayer d'utiliser cette

statement.executeUpdate("DELETE from Employee where EmployeeID ='"+txtId.getText()+"'"); 

note l'ajout d'une virgule inversée unique au début et à la fin de txtId.getText()

Questions connexes