0

我有一个文本框。当用户在文本框中输入名称时,我希望从表中获取详细信息

String getTxt = text.getText();
ResultSet rs=st.executeQuery("SELECT * FROM authors_4 WHERE self_authors="+getTxt);

在执行这个我得到异常

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server

这个有什么解决办法。需要帮忙

4

1 回答 1

3

您缺少单引号:

st.executeQuery("SELECT * FROM authors_4 WHERE self_authors='" + getTxt + "'");

更好地使用 aPreparedStatement来防止SQL 注入攻击。

于 2013-03-28T14:54:50.873 回答