Java org.hibernate.QueryException:并非所有参数都已设置
我有以下异常错误:Java org.hibernate.QueryException:并非所有参数都已设置,java,hibernate,Java,Hibernate,我有以下异常错误: Caused by: org.hibernate.QueryException: Not all named parameters have been set: [c] [UPDATE EtudeCredit e SET e.avisfin=:c WHERE e.codeEc=:idEc] 我的密码是:: public EtudeCredit updateavisfin(Integer id, String avisfint) { Query d= ent
Caused by: org.hibernate.QueryException: Not all named parameters have been set: [c]
[UPDATE EtudeCredit e SET e.avisfin=:c WHERE e.codeEc=:idEc]
我的密码是::
public EtudeCredit updateavisfin(Integer id, String avisfint) {
Query d= entityManager.createQuery("UPDATE EtudeCredit e SET e.avisfin=:c WHERE e.codeEc=:idEc");
d.setParameter("idEc",id).executeUpdate();
d.setParameter("c",avisfint).executeUpdate();
return (EtudeCredit) d.getSingleResult();}
有什么帮助吗?怎么了?当两个参数都设置好时,应该调用
executeUpdate()
一次。现在你叫它两次
d.setParameter("idEc",id);
d.setParameter("c",avisfint);
d.executeUpdate();
您试图在设置两个参数之前更新两次。您必须首先设置参数,然后执行更新:
d.setParameter("idEc",id);
d.setParameter("c",avisfint);
d.executeUpdate();
Alos,update语句没有“持久化对象结果”,所以不能对其发出“getSingleResult”。如果要在更新后检索结果,必须创建另一个查询(SELECT语句)。我已更改executeupdate,正如您所说,我现在已更改:不支持DML操作