Я пытаюсь проверить, существует ли имя пользователя в базе данных, но всякий раз, когда я пытаюсь выполнить запрос выбора, выдается сообщение об ошибке:
При сохранении информации возникает ошибка: com.mysql.jdbc. exceptions.jdbc4.MySQLSyntaxErrorException: у вас есть ошибка в вашем синтаксисе SQL;проверьте руководство, соответствующее вашей версии сервера MariaDB, для правильного синтаксиса, чтобы использовать рядом с 'user, где username =' sf '' в строке 1
Даже если я изменяю запрос, он возвращает ту же ошибку.
Ниже приведен код, который я использую
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter write=response.getWriter();
String mobile=null;
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/users","root","");
PreparedStatement p=con.prepareStatement("Insert into user values(?,?,?,?,?)");
Statement stmt=con.createStatement();
String name=request.getParameter("name");
mobile=request.getParameter("mobile");
String email=request.getParameter("email");
String password=request.getParameter("pass");
String username=request.getParameter("username");
PreparedStatement temp=con.prepareStatement("Select * from user where username= ?");
temp.setString(1, username);
ResultSet rs=temp.executeQuery();
if(rs.next())
{
write.println("<p>Username already exist in the record.Please change the username or go to login Page</p><br><p>Click the Link below to go to Login Page</p>");
write.println("<a href=\"index.html\" >Click here</a>");
}
else
{
p.setString(1,name);
p.setLong(2, Long.parseLong(mobile));
p.setString(3, username);
p.setString(4, password);
p.setString(5,email);
p.executeUpdate();
write.println("<p>Entry was sucessful.Your details were sucessfully stored from the database.Please go to the main page and login</p>");
write.println("<p>Click on the below link to go back to main page</p>");
write.println("<a href=\"index.html\" >Click here</a>");
}
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
write.println("An Error occured while storing information:"+e);
} catch (SQLException e) {
// TODO Auto-generated catch block
write.println("An Error occured while storing information:"+e);
}
catch (Exception e) {
// TODO Auto-generated catch block
write.println("An Error occured while storing information:"+e+":"+mobile);
}
}
}
Вывод должен содержать детали, если пользователь уже существует или нет. Но это всегда дает мне ошибку