我开始学习使用Netbeans制作Java GUI应用程序。我正在关注YouTube上的一个教程:https://www.youtube.com/watch?v=j0aEUB2Efuk。但是我遇到了mysql错误,我和视频中的家伙做的一样,但是无法正常工作。这是代码:
public boolean editClient(int id, String fname, String lname, String phone, String email) {
PreparedStatement st;
String editQuery = "UPDATE `clients` SET `first_name` = ?, `last_name = ?`, `phone` = ?, `email` = ? WHERE `id` = ? ";
try {
st = my_connection.createConnection().prepareStatement(editQuery);
st.setInt(1, id);
st.setString(2, fname);
st.setString(3, lname);
st.setString(4, phone);
st.setString(5, email);
return st.executeUpdate() > 0;
} catch (SQLException ex) {
Logger.getLogger(CLIENT.class.getName()).log(Level.SEVERE, null, ex);
return false;
}
}
sql查询似乎还可以,或者是JDBC驱动程序存在错误。
答案 0 :(得分:0)
您在 last_name =?'之后添加了引号,因此将其视为文字。
将其放在last_name之后和=之前
它应该看起来像这样
String editQuery = "UPDATE `clients` SET `first_name` = ?, `last_name` = ?, `phone` = ?, `email` = ? WHERE `id` = ? ";
如果有帮助,请投票。