これは新しいデータでテーブルを更新するために書かれましたが、次のコードを実行するとNULLポインタ例外が準備ステートメントに表示されます。誰かが私が間違っていた場所を見つけるのを助けることができます!java:Netbeansのwhere句を使用した更新ステートメント
String a= jTextField1.getText();
String b= jTextField2.getText();
String c= jTextField3.getText();
String d= jTextField4.getText();
String e= jTextField5.getText();
String f= jTextField6.getText();
String g= jTextField7.getText();
String i= jTextField8.getText();
try {
String s2="update loginsys set
appointtype='"+a+"',appointname='"+b+"',appointh='"+c+"',
appointm='"+d+"',appointd='"+e+"',appointmo='"+f+"',appointy='"+g+"'where
username='"+f+"';";
PST=conn.prepareStatement(s2);
PST.setString(1,a);
PST.setString(2,b);
PST.setString(3,c);
PST.setString(4,d);
PST.setString(5,e);
PST.setString(6,f);
PST.setString(7,g);
PST.setString(8,f);
RS=PST.executeQuery();
if(RS.next()){
JOptionPane.showMessageDialog(null, "Appointment was fixed");
appointments.this.setVisible(false);
new list().setVisible(true);}
else
JOptionPane.showMessageDialog(null, "Appointment was not fixed");
最初に戻って[Prepared Statementsの使用](https://docs.oracle.com/javase/tutorial/jdbc/basics/prepared.html)のチュートリアル – MadProgrammer
T henは 'update loginsys set appointtype = ?, appointname = ?, appointh = ?, appointm = ?, appointd = ?, appointmo = ?, appointy =?のようなクエリ文字列を更新します。どこのユーザー名=? – MadProgrammer
し、私たちが知っているすべてのために 'executeUpdate'を –