String sql = "from User s where s.sid=" + sid +" s.userName like '%" + username +"%' and s.userPassword like '%" + userpassword + "%' and s.applyYn = 1";其中 sid为int型,该语句放入createQuery()中报错,请问哪儿出问题了?

解决方案 »

  1.   

    where s.sid=" + sid 后面没有 add 与下一个条件相连
    楼主要仔细奥!!
      

  2.   

    刚才输入错了,是 and 
      

  3.   

    String sql = "from User s where s.sid=" + sid +"and s.userName like '%" + username +"%' and s.userPassword like '%" + userpassword + "%' and s.applyYn = 1";
      

  4.   

    String sql = "from User s where s.sid=" + sid +"and s.userName like '%" + username +"%' and s.userPassword like '%" + userpassword + "%' and s.applyYn = 1";
    希望有帮助了!(*^__^*) 嘻嘻……
      

  5.   

    3楼正解,少了and。最好用?之类的占位符,容易拼接
      

  6.   

    应该是:String sql = "from User s where s.sid=" + sid +"and s.userName like '%" + username +"%' and s.userPassword like '%" + userpassword + "%' and s.applyYn = 1";
      

  7.   


    String sql = "from User as s where s.sid=" + sid +"  and s.userName like '%" + username +"%' and s.userPassword like '%" + userpassword + "%' and s.applyYn = 1";这样试试