【问题标题】:Getting java.sql.SQLException: Column count doesn't match value count at row 1获取 java.sql.SQLException:列计数与第 1 行的值计数不匹配
【发布时间】:2020-02-06 17:24:21
【问题描述】:

我正在使用 JDBC 创建一个网站,在运行 TOMCAT 时出现以下错误,我应该如何解决这个问题,我在 MYSQL 工作台中创建了 6 个列,分别为 uname、pass、name、city、email、phone 但仍然收到此错误。

这是我的 register.java servlet 文件,我运行它并将获得的类复制粘贴到 WEB-INF/classes 文件夹

public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException{
        response.setContentType("text/html");
            PrintWriter out=response.getWriter();
        try{
            Class.forName("com.mysql.jdbc.Driver");
            Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/form","root","sudhakar");

            String uname = request.getParameter("uname");
            String psw = request.getParameter("psw");
            String nam = request.getParameter("nam");
            String cit = request.getParameter("cit");
            String ema = request.getParameter("ema");
            String num = request.getParameter("num");
                    PreparedStatement pst = con.prepareStatement("insert into login values(?,?,?,?,?,?)");
                    pst.setString(1,uname);
                    pst.setString(2,psw);
                    pst.setString(3,nam);
                    pst.setString(4,cit);
                    pst.setString(5,ema);
                    pst.setString(6,num);
                    pst.executeUpdate();
                    out.print("Successs");

        }catch(Exception e){
            out.print(e);
        }
    }
}

【问题讨论】:

  • 登录是另一个表,我完成了它的工作正常,但这个寄存器似乎不起作用
  • 对不起,我一直在反复试验,我改成 6 个问号,结果还是一样 PS:现在将问题本身编辑为 6 个参数
  • 兄弟还是遇到同样的错误
  • 请显示您的表结构,即创建语句

标签: java mysql sql database servlets


【解决方案1】:

将您的 SQL 语句更改为:

insert into login(uname,pass,name,city,email,phone) values(?,?,?,?,?,?)

通常建议始终明确命名您的列,以便您的语句在添加新(可空/合理默认)列时继续工作,或者在重命名或删除列时停止工作,这也使您的代码更加自我- 记录

【讨论】:

    猜你喜欢
    • 2014-01-17
    • 1970-01-01
    • 2023-03-31
    • 1970-01-01
    • 2020-10-21
    • 1970-01-01
    • 1970-01-01
    • 2018-04-17
    相关资源
    最近更新 更多