0

我在 NetBeans 中构建了一个 GUI 来编辑 MS Access 数据库,我能够成功连接和更新数据库中的所有表,除了一个。对于有问题的表,我只能更新第一行和第三行,当尝试更新其他行时,我收到以下错误:

更新 btn 候选人错误:[Microsoft][ODBC Microsoft Access Driver] 查询表达式中的语法错误(缺少运算符)''...100 字符字符串...' WHERE CID = 5'

执行更新的方法代码如下:

 private void btnUp2ActionPerformed(java.awt.event.ActionEvent evt) {                                       
      try{ 
int CID = Integer.parseInt(txtCID.getText());

String FNC = txtFNC.getText();
String SNC = txtSNC.getText();
String ClasC = txtClaC.getText();
int Age= Integer.parseInt(txtAge.getText());
String Mot = txtMot.getText();

String sql = "UPDATE tblCandidates SET FirstName = '"+FNC+"',Surname ='"+SNC+"',Class ='"+ClasC+"', Age= "+Age+", Motivation ='"+Mot+"' WHERE CID = "+CID+"" ;
System.out.println(sql);//Note this was used as part of my debugging
obj.updateTbl(sql);
JOptionPane.showMessageDialog(null,"Update Successful"); 
}catch(Exception e)
{
JOptionPane.showMessageDialog(null,"Error, Check Fields");     
System.out.println("Update btn Candidates Error: "+e.getMessage());
}         
    }  

该程序正确连接到数据库并使用类似的代码成功更新所有其他表(基本上只是更改表、字段和变量名称)。我似乎无法理解为什么只有第一条和第三条记录会被更新。任何帮助将不胜感激 - 谢谢。

4

0 回答 0