我的from子句语法错误



我得到了这个:
java.sql.SQLException:[Microsoft][ODBC Microsoft Access Driver]FROM子句中存在语法错误。对于我的代码:

ResultSet results = state.executeQuery("SELECT * FROM User" + "WHERE user_name = '" + 
                    txtUser.getText() + "'AND password = '" + txtPass.getText() + "'" );

我已经声明了所有的变量,我怀疑错误与结构有关,但我不确定。感谢

如果您密切关注这一行的代码:

"SELECT * FROM User" + "WHERE user_name

你可以看到这导致

SELECT * FROM UserWHERE user_name

您需要添加一个空格。

此外,通过构建这样的语句,您将面临SQL注入攻击。您确实应该使用PreparedStatement并使用占位符。你也不需要手工构建声明,这将帮助你避免这个问题。

最新更新