模糊查询语句如下:
Query query=session.createQuery("from Bbsarticle where  intChirldId=0  and varUserName='"+name+"' and intBoardId='"+id+"' and varTopic like '%"+key+"%'");

解决方案 »

  1.   

    Query query=session.createQuery("from Bbsarticle where intChirldId=0 and varUserName='"+name+"' and intBoardId='"+id+"' and varTopic like '%"+key+"%'");intBoardId 是什么类型?如果不是字符串的话 就不需要''单引号了。
      

  2.   

    别着急,慢慢来。你输出一下sql语句 然后把输出的语句放到数据库里面去执行下  看看能不能看出什么问题
      

  3.   

    语句中的 in 错误了,in后面是加括号的,上网查一下这样的例子,   例如:in ()
      

  4.   

    数据库中执行这句话,可以查出数据。帮我看看哪里出问题了
    select * from Bbsarticle where  intChirldId=0  and varUserName="陈斌" and intBoardId=1  and varTopic like '%查找%'
      

  5.   

    你是不是把HQL语句 和 SQL语句 搞混了?
    换成 createSQLQuery试试?
      

  6.   

    这里面查询的就是mySQL语句呀!in()是什么?
      

  7.   

    你看看你这hql里面的对象和你的PO里面对应起来了没
    没对应起来就是条sql 请用createSQLQuery
      

  8.   


    现在不管你用MYSQL OR  SQLSERVER ,是让你 在 你的 hibernate 的实现类中使用
    String sql =  你自己拼写的sql //注意是SQL 不是HQL
    session.createSQLQuery(sql).list(); 来实现 
      

  9.   

    session.createQuery 查询的是HQL语句、
    你自己拼起来的语句能直接在数据库里面运行的话 应该是是sql语句吧?
    所以让你试试createSQLQuery ()
      

  10.   

    你这样写试试看
    Query query=session.createQuery(string.Format("from Bbsarticle where intChirldId=0 and varUserName='{0}' and intBoardId='{1}' and varTopic like '%{2}'"),name,id,key);
      

  11.   

    少写个%
    Query query=session.createQuery(string.Format("from Bbsarticle where intChirldId=0 
    and varUserName='{0}' and intBoardId='{1}' and varTopic like '%{2}&'"),name,id,key);
      

  12.   

    Query query=session.createQuery(string.Format("from Bbsarticle where intChirldId=0  
    and varUserName='{0}' and intBoardId='{1}' and varTopic like '%{2}%'"),name,id,key);
    汗,写了三遍才写对
    ……
      

  13.   

    你的hql语句是没有错的,查查别的问题吧,或者把错误提示贴出来,让大伙给你瞧瞧
      

  14.   

    Query query=session.createQuery("from Bbsarticle b where b.intChirldId=0 and b.varUserName='"+name+"' and b.intBoardId='"+id+"' and b.varTopic like '%"+key+"%'");HQL语句是以对象形式来定义的呀
      

  15.   

    intBoardId 是什么类型?如果不是字符串的话 就不需要''单引号了。
      

  16.   


    既然你用的 是Hibernate,那么Bbsarticle 对应的应是你的实体类名,而不是表面。
    查询条件中对应的应该是实体中的属性,而不是数据库表中的列名。检查一下。
      

  17.   

    Query query=session.createQuery("from Bbsarticle where intChirldId=0 and varUserName='"+name+"' and intBoardId='"+id+"' and varTopic like '%"+key+"%'");HQL 语句 查询,好像要用?或者:占位符表示吧?
      

  18.   

    加上别名试下,Query query=session.createQuery("from Bbsarticle b where b.intChirldId=0 and b.varUserName='"+name+"' and b.intBoardId='"+id+"' and b.varTopic like '%"+key+"%'");
      

  19.   

    Query query=session.createQuery("from Bbsarticle where intChirldId=0 and varUserName="+name+" and intBoardId="+id+" and varTopic like %"+key+"%");
      

  20.   

    Query query=session.createQuery("from Bbsarticle where intChirldId=0 
    and varUserName =:name and intBoardId=:id 
    and varTopic like =:).setInt("name","你的值").setInt("id","值")
    .setString("ket",值);HQL与SQL用法不一样
      

  21.   

    setInt("name","你的值").setInt("id","值")
    .setString("ket",值);
    我是通过写参数传递的,没有具体的值呀