JavaSQLQuery错误
尽管数据库中的字段与JavaSQLQuery错误,java,sql,Java,Sql,尽管数据库中的字段与email\u chaffer和password public Chauffeur findChauffeurByEmailPwd(String email, String pwd) { Chauffeur c = null; try { String req = "select * from chauffeur where email_chauffeur='" + email + "' and pwd='" + p
email\u chaffer
和password
public Chauffeur findChauffeurByEmailPwd(String email, String pwd) {
Chauffeur c = null;
try {
String req = "select * from chauffeur where email_chauffeur='" + email + "' and pwd='" + pwd + "'";
DataSource ds = DataSource.getInstance();
connection = ds.getConnection();
Statement s = connection.createStatement();
ResultSet rs = s.executeQuery(req);
if(rs.isBeforeFirst()){
rs.next();
c.setIdChauffeur(rs.getInt("id_chauffeur"));
c.setNomUser(rs.getString("nom_chauffeur"));
c.setPrenomUser(rs.getString("prenom_chauffeur"));
c.setCinUser(rs.getString("cin_chauffeur"));
c.setTelUser(rs.getInt("tel_chauffeur"));
c.setEmailUser(rs.getString("email_chauffeur"));
c.setPwdUser(rs.getString("pwd"));
c.setAdresseUser(rs.getString("adresse_chauffeur"));
c.setNote(rs.getInt("note_chauffeur"));
c.setNotifUser(rs.getInt("notif_chauffeur"));
}
} catch (SQLException ex) {
Logger.getLogger(ChauffeurDAO.class.getName()).log(Level.SEVERE, null, ex);
}
return c;
}
错误:
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'email_chaffeur' in 'where clause'
您正在运行过时的编译代码。删除所有编译的.class文件并强制重新生成。如错误消息所述,执行的代码使用名为“email\u chaffeur”的列,但数据库中没有此类列。看起来你的代码有输入错误 我的建议是,修正打字错误,重新部署代码
您可能还想阅读并关闭所使用的资源(如等)“email\u chaffeur”email\u chaffeur(il manque un“u”/a“u”缺失)拼写错误…email\u chaffeur。您有电子邮件司机您可能还想了解sql注入。。您应该关闭连接,等等,检查Chauffer表中是否存在email_chauffer列。确保你拼写正确。也就是说,您将自己暴露于SQL注入中。此外,您最好使用SHA256存储密码的盐渍散列。以纯文本形式存储密码不是一个好主意。但我的代码中不存在“email\u chaffuer”。以前是这样的,但我改变了。但是,它一直向我显示相同的错误。请认真对待我关于SQL注入和明文密码的警告。