Query query=session.createQuery("update Users set users.name=?,users.userpwd=? where users.userid=?");
query.setString(0,name);
query.setString(1,password);
query.setInteger(2,id);
query.executeUpdate();
运行时,出现Exception in thread "main" java.lang.IllegalArgumentException: node to traverse cannot be null!,问题代码在第一行,百度上说的是缺少逗号,但是我这行代码有逗号啊,把问号换成值在plsql中都能执行,实在看不出哪出问题了,求解。hibernateexception

解决方案 »

  1.   

    update Users  users set users.name=?,users.userpwd=? where users.userid=?
      

  2.   

    你  Users  没有起别名  上面的不行吗?
      

  3.   

    估计类型没匹配 Query query=session.createQuery("update Users users  set users.name=?,users.userpwd=? where users.userid=?");
     
    query.executeUpdate();
    把问号写死测试呢。
      

  4.   

    users.userpwd=? where users.userid=?");为什么是users.userid 有问题  严重滴问题LZ 编程还需认真呐
      

  5.   

    更新为什么用hibernate这么写?
      

  6.   

    问号写死在plsql里可以执行,在java代码里不能执行