我试图在表格中插入数据,但它显示以下错误:
java.sql.SQLException:列数与第1行的值计数不匹配
我已经搜索了这个错误,我尝试了所有解决方案,但仍无法使其正常运行。这是我的代码:
class.html
<%@ page import ="java.sql.*" import= "java.sql.Connection"
%>
<%
String cname = request.getParameter("name");
String cstrength = request.getParameter("strength");
String croom = request.getParameter("room");
String csection = request.getParameter("section");
//String available = request.getParameter("bavailable");
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/web",
"root", "");
Statement st = con.createStatement();
//ResultSet rs;
int i = st.executeUpdate("insert into class(name, strength ,room, section) values ('" + cname + "','" + cstrength + "','" + croom + "','" + csection + "', CURDATE());");
if (i > 0) {
//session.setAttribute("userid", user);
response.sendRedirect("wel.jsp");
// out.print("Registration Successfull!"+"<a href='index.jsp'>Go to Login</a>");
} else {
response.sendRedirect("index.jsp");
}
%>
class.jsp
Range("T1") = "=VLookup(A2, Sheetname!A2:F171, 4, False)"
答案 0 :(得分:1)
您的输入语句列出了四列 - name
,strength
,room
,section
- 然后提供了五个值:cname
,{{1 },cstrength
,croom
和csection
。
您只需要在insert语句中添加其他列。
答案 1 :(得分:1)
这是您正在运行的查询:
insert into class(name, strength ,room, section) values ('" + cname + "','" + cstrength + "','" + croom + "','" + csection + "', CURDATE());")
你提到了要传递的4个列值(class(name, strength ,room, section)
),但是你传递了5个值(CURDATE()的额外值)
在表中添加新列并更新查询以包含该列(即(class(name, strength ,room, section, curdate)
))或删除CURDATE()。