在mysql的SELECT查询中使用来自JTextBox的值

时间:2013-03-28 14:53:11

标签: java

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

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

这是什么解决方案。需要帮助

1 个答案:

答案 0 :(得分:3)

你缺少单引号:

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

最好使用PreparedStatement来防范SQL Injection攻击。