差一个%, select * from issue_info where field like %keyword% order by id asc
应该写成con.rs=con.stmt.executeQuery("select * from issue_info where "+field+" like '%'"+keyword+"'%' order by id asc"); 注意单引号。
NO~~~String keyword=new String(request.getParameter("keywords").getBytes("ISO8859_1")); String field = new String(request.getParameter("select").getBytes("ISO8859_1"));你这两句接收过来的字符是乱码,当然数据库找不到你的查询...要这样:String keyword=new String(request.getParameter("keywords").getBytes("ISO8859_1"),"gb2312"); String field = new String(request.getParameter("select").getBytes("ISO8859_1"),"gb2312"););
经过测试,终于出来了。要这么写:select * from issue_info where "+field+" like '%"+keyword+"%' order by id asc
select * from issue_info where field like %keyword% order by id asc
注意单引号。
String field = new String(request.getParameter("select").getBytes("ISO8859_1"));你这两句接收过来的字符是乱码,当然数据库找不到你的查询...要这样:String keyword=new String(request.getParameter("keywords").getBytes("ISO8859_1"),"gb2312");
String field = new String(request.getParameter("select").getBytes("ISO8859_1"),"gb2312"););