Sql Query LIKE无法正常工作

时间:2013-02-18 18:08:03

标签: mysql jsp jsp-tags

您好我已经尝试进行查询,它接收查询字符串上的值,但是不工作我认为查询它本身并不好。你能救我吗?

所以我收到了

的查询
<%String detalhe = request.getParameter("value");%>

我不会把连接和东西放在一起,因为它们与其他查询一起工作,所以问题不在于连接。

// sql query to retrieve values from the specified table. 

String QueryString = "SELECT * FROM ebooko.dadoslivros WHERE Autor LIKE '%"+detalhe+"%'

OR ano LIKE '%"+detalhe+"%'";;
rs = statement.executeQuery(QueryString);

它无法回溯价值,我正在查询。

网络信息: 表:dadoslivros 我需要比较值的列:Autor,ano。

例如,当我运行Href时,传递的值是:Jules%Verne(我认为它会使用'%'更改SPACES。

2 个答案:

答案 0 :(得分:1)

使用URLDecoder#decode()解码查询字符串中的参数。

您还应考虑使用PreparedStatement来阻止SQL injection攻击。

答案 1 :(得分:0)

我解决了改变查询的问题:

String QueryString = "SELECT * FROM dadoslivros WHERE (Data LIKE '%"+detalhe+"%') OR (Autor LIKE '%"+detalhe+"%')";;

也许它可以帮助另一个人;)