现在要查询特定的某条数据的记录,这是HQL语句:Long size =(Long) session.createQuery("select count(*) from VoucherBody where certificateId=4900022519").uniqueResult();但是HIBERNATE发出的语句是Hibernate: select count(*) as col_0_0_ from t_voucherHead voucherhea0_很显然后面的条件没加上去,是不是hibernate不支持这样做呢?如果不可以,该怎样做呢

解决方案 »

  1.   

    session.createQuery("select count(v) from VoucherBody v where v.certificateId=:certificateId").setParameter("certificateId", 4900022519).uniqueResult();
    这样看看
      

  2.   

    这样写应该能查出来啊
    你jsp上显示是正常的吗
      

  3.   

    你的hibernate太nB啦,是不是自己造的轮子啊,如果hibernate连这种错误都会出现,那全世界的程序员都会崩溃掉
      

  4.   

    session.createQuery("select count(v) from VoucherBody v where v.certificateId=:certificateId").setString("certificateId", 4900022519).uniqueResult(); 这样子呢???
      

  5.   

    还方便把你的 VoucherBody 类发出来看看啊