0

MS Access データベースを編集するために NetBeans で GUI を作成しました。データベース内の 1 つを除くすべてのテーブルに正常に接続して更新できます。問題のテーブルでは、1 番目と 3 番目の行のみを更新できます。他の行を更新しようとすると、次のエラーが表示されます。

更新 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());
}         
    }  

プログラムはデータベースに正しく接続し、同様のコードを使用して他のすべてのテーブルを正常に更新します (基本的にテーブル、フィールド、および変数名を変更するだけです)。なぜ1番目と3番目のレコードだけが更新されるのか理解できないようです。どんな助けでも大歓迎です - ありがとう。

4

0 に答える 0