首先我创建了一个2 sql表,一个正在运行,另一个不是我的java类中的代码是
try {
PreparedStatement ps1 = con.prepareStatement("INSERT INTO pattable(surname,first,middle,add,contact,email,bdate,genderr) values(?,?,?,?,?,?,?,?);");
ps1.setString(1, surname);
ps1.setString(2, first);
ps1.setString(3, middle);
ps1.setString(4, add);
ps1.setString(5, contact);
ps1.setString(6, email);
ps1.setString(7, bdate);
ps1.setString(8, genderr);
ps1.execute();
ps1.close();
con.close();
}
catch(SQLException e){
e.printStackTrace();
}
}
根据控制台,错误可能是在Java中的ps1.execute行触发的,其行为“您的SQL语法有错误;请查看与您的MySQL服务器版本相对应的手册,以找到在'add,附近使用正确的语法,联系人,电子邮件,约会,性别)”请帮助感谢您的回复,确实需要案例研究:)
您有一个列名add
,这是mysql中的保留关键字。检查here您不能将其用作获得错误原因的列名。
您的语法是错误的,我会复查https://www.w3schools.com/sql/sql_insert.asp以查找您的问题。