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 + "'");

SQL インジェクション攻撃PreparedStatementから保護するには、a を使用することをお勧めします。

于 2013-03-28T14:54:50.873 に答える