如何解决java.sql.SQLException:列计数不';第1行的值计数不匹配为什么?
不明白为什么会显示错误 java.sql.SQLException:列计数与第1行的值计数不匹配 我的代码是如何解决java.sql.SQLException:列计数不';第1行的值计数不匹配为什么?,java,sql,jdbc,Java,Sql,Jdbc,不明白为什么会显示错误 java.sql.SQLException:列计数与第1行的值计数不匹配 我的代码是 <%@ page import="java.sql.*" %> <% String ime = request.getParameter ("ime"); String priimek = request.getParameter ("priimek"); String spol = request.getParameter ("spol");
<%@ page import="java.sql.*" %>
<%
String ime = request.getParameter ("ime");
String priimek = request.getParameter ("priimek");
String spol = request.getParameter ("spol");
String email= request.getParameter ("email");
String gsm = request.getParameter ("gsm");
String datumr = request.getParameter ("datumr");
String subject = request.getParameter ("subject");
String q1 = request.getParameter ("q1");
String q2 = request.getParameter ("q2");
String q3 = request.getParameter ("q3");
String q4 = request.getParameter ("q4");
String q5 = request.getParameter ("q5");
String q6 = request.getParameter ("q6");
String q7 = request.getParameter ("q7");
String q8 = request.getParameter ("q8");
String q9 = request.getParameter ("q9");
String q10 = request.getParameter ("q10");
Connection con = null;
Statement stmt = null;
ResultSet rs = null;
try {
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost/zora", "zora",
"zora0101");
stmt = con.createStatement();
stmt.executeUpdate ("INSERT INTO stranki (ime, priimek, spol, email, gsm,
datumr, subject, q1, q2, q3, q4, q5, q6, q7, q8, q9, q10) VALUES
('"+ime+"', '"+priimek+"', '"+spol+"', '"+email+"','"+gsm+"',
'"+datumr+"', '"+subject+"', '"+q1+"', '"+q2+"', '"+q3+"', '"+q4+"',
'"+q5+"', '"+q6+"' '"+q7+"', '"+q8+"', '"+q9+"', '"+q10+"')");
} catch(Exception e) %>
我做错了什么?有时候会发生,别担心。您的代码中缺少逗号:
VALUES
('"+ime+"', '"+priimek+"', '"+spol+"', '"+email+"','"+gsm+"',
'"+datumr+"', '"+subject+"', '"+q1+"', '"+q2+"', '"+q3+"', '"+q4+"',
'"+q5+"', '"+q6+"'**comma missing here** '"+q7+"', '"+q8+"', '"+q9+"', '"+q10+"')");
}
更正代码:
VALUES
('"+ime+"', '"+priimek+"', '"+spol+"', '"+email+"','"+gsm+"',
'"+datumr+"', '"+subject+"', '"+q1+"', '"+q2+"', '"+q3+"', '"+q4+"',
'"+q5+"', '"+q6+"', '"+q7+"', '"+q8+"', '"+q9+"', '"+q10+"')");
}
希望它能解决您的问题。请学习如何使用带参数的准备语句。您当前的代码不安全,因为它容易受到SQL注入的攻击。此外,它很难阅读(这使得它很容易错过像您这样的错误)。在
“+q6+”
和“+q7+”
之间缺少一个逗号。