J'ai rencontré un problème lié à la base de données.En fait, lorsque je mets à jour l'enregistrement, il affiche l'exception "java.sql.sqlsyntaxerrorexception: comparaison entre numeric et char (ucs_basic) ne sont pas pris en charge » voici mon code:java.sql.sqlsyntaxerrorexception: la comparaison entre numeric et char (ucs_basic) n'est pas prise en charge
conn = JavaConnectD.Connerdb();
int p = JOptionPane.showConfirmDialog(null, "Do you really want to update this record", "UPDATE", JOptionPane.YES_NO_OPTION);
if(p==0){
try{
String sql="UPDATE SANDEEP.STUDENTRECORD SET REGTYPE='"+reg_type.getSelectedItem().toString()+"',SESSION='"+combo_session.getSelectedItem().toString()+"',STUDENTID='"+tf_sid.getText()+"',NAME='"+tf_name.getText()+"',"
+ "CLASS='"+combo_class.getSelectedItem().toString()+"',FNAME='"+tf_fname.getText()+"',MNAME='"+tf_mname.getText()+"',DOB='"+(((JTextField)txt_Date.getDateEditor().getUiComponent()).getText())+"',ADDRESS='"+tf_adrss.getText()+"',MOBILE='"+tf_mobile.getText()+"',PHONE='"+tf_phone.getText()+"',REGFEE='"+tf_reg.getText()+"',ADDMISSION='"+tf_addmision.getText()+"' where STUDENTID='"+tf_sid.getText()+"' ";
pst=conn.prepareStatement(sql);
pst.executeUpdate();
JOptionPane.showMessageDialog(null, "Record Updated");
tf_sid.setText("");
tf_name.setText("");
tf_fname.setText("");
tf_mname.setText("");
tf_adrss.setText("");
tf_mobile.setText("");
tf_phone.setText("");
tf_reg.setText("");
tf_addmision.setText("");
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}
}
J'utilise NetBeans 7.1 et base de données intégrée derby
s'il vous plaît me dire où est je écris mal. Si vous avez besoin d'autres informations, n'hésitez pas à demander.
Merci
Qu'est-ce que tu ne comprends pas dans le message d'erreur? (Comme une note de côté, vous devriez lire sur l'injection sql) –
Comme une conjecture sauvage, je parie que STUDENTID étant un nombre donc pas 'STUDENTID = '" + tf_sid.getText() + "'' –
réellement im pas bon dans la programmation . quelle méthode est utilisée pour résoudre ceci ou comment? –