java.sql.SQLException:Netbeans 上的参数索引超出范围(5 > 参数数量,即 4)

java.sql.SQLException: Parameter index out of range (5 > number of parameters, which is 4) on Netbeans

我开始学习使用 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 驱动程序的错误。

您在 last_name=?' 之后添加了引号,因此将其视为字面意思。

放在last_name之后=

之前

它应该是这样的,

String editQuery = "UPDATE `clients` SET `first_name` = ?, `last_name` = ?, `phone` = ?, `email` = ? WHERE `id` = ? "; 

如果答案有帮助,请点赞。