在您的SQL语法错误;检查对应于你的MySQL服务器版本使用附近的“正确的语法手册?和密码=?

问题描述 投票:2回答:1

感谢您访问我的问题:d我尝试完成我的项目,并具有SQL一个问题,我。这是我的代码,我不知道为什么和不知道解决它。我使用的Java EE - Eclip做到这一点。 (我创建JSP网站)

try{                     
    String sql = "SELECT User_Name, Password, Gender FROM User_Account WHERE User_Name=? AND password=? ";
    PreparedStatement pstm= conz.prepareStatement(sql);                 
    ResultSet rs=pstm.executeQuery(sql);         
    String user_name=null;
    String pass_word=null;

    while(rs.next()){
        user_name=rs.getString(1);
        pass_word=rs.getString(2);

         }

if(user_name.equals(userName)&&pass_word.equals(password)){
    response.sendRedirect(request.getContextPath() + "/userInfo");
    hasError = true;
    errorString = "Connected ";
} else {               
    hasError = true;
    errorString = "Wrong user or pass!"              
} 

运行时出现的通知“您的SQL语法错误;检查对应于您的MySQL服务器版本正确的语法使用附近的手册‘和密码=?’位于第1" 行帮我修复它请。预先感谢。

java jsp java-ee
1个回答
2
投票

如果设置了?标记你必须填写它们:

String sql = "SELECT User_Name, Password, Gender FROM User_Account WHERE User_Name=? AND password=? ";
PreparedStatement pstm= conz.prepareStatement(sql); 
pstm.setString(1,"John Doe");
pstm.setString(2,"12345");
ResultSet rs=pstm.executeQuery();

做到这一点,您的SQL语法是正确的。

© www.soinside.com 2019 - 2024. All rights reserved.