您好我已经尝试进行查询,它接收查询字符串上的值,但是不工作我认为查询它本身并不好。你能救我吗?
所以我收到了
的查询<%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。
答案 0 :(得分:1)
使用URLDecoder#decode()
解码查询字符串中的参数。
您还应考虑使用PreparedStatement
来阻止SQL injection攻击。
答案 1 :(得分:0)
我解决了改变查询的问题:
String QueryString = "SELECT * FROM dadoslivros WHERE (Data LIKE '%"+detalhe+"%') OR (Autor LIKE '%"+detalhe+"%')";;
也许它可以帮助另一个人;)