sql="select b_id,name,author,publisher,price from book where "+type1+" like '%"+keyword+"%"; 
这个地方(%的后面)少了一个',改成下面
sql="select b_id,name,author,publisher,price from book where "+type1+" like '%"+keyword+"%'"; 

解决方案 »

  1.   

    可是改了之后,又出现了如下问题:
    /web/book/search.jsp:31: Invalid character constant.
    sql="select b_id,name,author,publisher,price from book where "+type1+" like '%"+keyword+"%"' ; 
                                                                                               ^
    /web/book/search.jsp:31: ';' expected.
    sql="select b_id,name,author,publisher,price from book where "+type1+" like '%"+keyword+"%"' ; 
                                                                                               ^
    2 errors是什么原因呀?
      

  2.   

    对了,用了%好象就不用'了
    sql="select b_id,name,author,publisher,price from book where "+type1+" like '%"+keyword+"%"' ; 
    改成
    sql="select b_id,name,author,publisher,price from book where "+type1+" like %"+keyword+"%";
      

  3.   

    不对呀,改了之后又提示:
    select b_id,name,author,publisher,price from book where author like %刘传% java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][SQL Server]第 1 行: '刘传' 附近有语法错误。
      

  4.   

    sql="select b_id,name,author,publisher,price from book where "+type1+" like '%"+keyword+"%"'; 
    你上面的错误是因为你把后面的单引号放到了外面了
    keyword+"%"'; 应该是keyword+"%'";
      

  5.   

    还是不对,仍然提示:select b_id,name,author,publisher,price from book where author like '%刘传%' java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][SQL Server]字符串 '%刘传%' 之前有未闭合的引号。
      

  6.   

    select b_id,name,author,publisher,price from book where author like '%刘传%'你在查询分析器执行看看,这个怎么会有错那?
      

  7.   

    应该不会的,你把你的语句按下面的重新写一边
    sql="select b_id,name,author,publisher,price from book where "+type1+" like '%"+keyword+"%'"; 注意空格之类的