嗨,我试图做一个查询,它接收querystring上的值,但不起作用,我认为查询本身不好。你能帮我吗?
所以我收到了上的查询
<%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);
它根本无法检索值,我正在查询。
附加信息:表:达多斯利夫罗斯我需要比较值的列:Autor,ano。
例如,当我运行Href时,传递的值是:Jules%Verne(我认为它将空格改为"%"。
使用URLDecoder#decode()
对查询字符串中的参数进行解码。
您还应该考虑使用PreparedStatement
来防止SQL注入攻击。
我解决了更改查询的问题:
String QueryString = "SELECT * FROM dadoslivros WHERE (Data LIKE '%"+detalhe+"%') OR (Autor LIKE '%"+detalhe+"%')";;
也许它可以帮助另一个人;)