ここでは何が欠けているのか分かりませんが、何も私のために働いていないようです。私はいくつかのアプローチを試してみましたが、うまくいかなかったようです。何か案が?ここでMySQLをアップデートしてください:java.sql.SQLException:パラメータ8に値が指定されていません
は私のコードです:
btnUpdate = new JButton("Update");
btnUpdate.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String pid = textIDField.getText();
String fn = textFNameField.getText();
String ln = textLNameField.getText();
String add = addressField.getText();
String city = cityField.getText();
String phone = phoneField.getText();
String mid = medIDField.getText();
try{
Connection conn = DriverManager.getConnection("dbinfo");
String query = "UPDATE Patient SET PatID=?,FirstName=?,LastName=?,Address=?,City=?,Phone=?,MedID=? WHERE PatID=? AND MedID=?";
PreparedStatement pst = conn.prepareStatement(query);
pst.setString(1, pid);
pst.setString(2, fn);
pst.setString(3, ln);
pst.setString(4, add);
pst.setString(5, city);
pst.setString(6, phone);
pst.setString(7, mid);
pst.executeUpdate();
JOptionPane.showMessageDialog(null, "Patient Updated");
pst.close();
}catch(Exception ex){
ex.printStackTrace();
}
}
});
以下を確認していないしてください(where句の値)? – rgettman
SQLには何個の '?'がありますか? ** 9 **。いくつのパラメータを設定していますか? **7**。 「パラメータ8に値が指定されていません」というエラーメッセージのどの部分が不明ですか? – Andreas
pidとmidが2回使用されていることを知るには十分にスマートであることを期待しています。あなたは両方の時間を供給する必要があります。本当に、それらの値を変更しようとしないときに、その値を更新するのはなぜですか? – ghenghy