StringBuffer sql = new StringBuffer();之后在程序中判断查询String sql1 = sql.toString();
System.out.println(sql1);之后打印select * from blbgtb2 where lh like '%123%' and pm like '%A60%' and xmgg like '%外殼%' order by date
select * from blbgtb2 where pm like '%1234%' order by date上面第一个就是查不出东西来
 下面这个可以查!!
 是不是第一个不能那样 and like多个啊!!

解决方案 »

  1.   

    sql语句语法错误,可以这样拼写,没差出东西,那就是因为你的没符合条件的数据呗,没报错就是sql合法
      

  2.   

    不好意思,打错了,
    sql语句语法没有错误,可以这样拼写,没查出东西,那就是因为你的没符合条件的数据呗,没报错就是sql合法
      

  3.   

    我在查询分析器里面试了我的SQl合法就是查不出结果
      

  4.   

    那就是数据的错啊,你的数据有没有符合条件的,有没有 lh like '%123%' and pm like '%A60%' and xmgg like '%外殼%' 的数据,你对like如何理解啊?
      

  5.   

    你先把中文的like去掉试试,可能是乱码。如果去掉可以查到,那就是乱码。
    一般使用参数方式检索sql的,不是直接拼成一个语句。
    如果查不到,你的数据有问题
      

  6.   


    你的都是用的“and” 也就是 记录只有符合所有的条件后才有查出来啊。 没查出来,只能说明没有符合那些条件的记录。还有,就是,你的那些条件需要都写上么? 只有需要的条件不为空的时候,我们才添加,这样才能做到动态查询啊。