请教小弟我这条hql的update语句那个地方出有关问题了?
请问我这条hql的update语句那个地方出问题了?????
总是报“could not lacate named parameter [username]”的错误。上面插入的所有值debug过,都是有的,User u的所有属性名都没问题,update语句的语法估计也是这个样的呀,数据库表中也有username这个属性,忘大家指出我粗心大意的地方。
------解决方案--------------------
楼主代码是复制过来的吗?如果是的话那就是中文空格导致的,你username后边是个中文空格,检查下吧
- Java code
Query q = session.createQuery("update User u set u.birthday=:bday , u.realName=:rn , u.sex=:sex , u.birthPlace=:bP , u.livePlace=:lp , u.bloodType=:bt where u.username=:username "); q.setParameter("bday", u.getBirthday()); q.setParameter("rn", u.getRealName()); q.setParameter("sex", u.getSex()); q.setParameter("bP", u.getBirthPlace()); q.setParameter("lp", u.getLivePlace()); q.setParameter("bt", u.getBloodType()); q.setParameter("username", u.getUsername()); q.executeUpdate();
总是报“could not lacate named parameter [username]”的错误。上面插入的所有值debug过,都是有的,User u的所有属性名都没问题,update语句的语法估计也是这个样的呀,数据库表中也有username这个属性,忘大家指出我粗心大意的地方。
------解决方案--------------------
楼主代码是复制过来的吗?如果是的话那就是中文空格导致的,你username后边是个中文空格,检查下吧