我在Hibernate中遇到executeUpdate问题。 通过休眠触发的查询就像
Update table set column1='abc',column2=:time,servertime=:servertime where service IN :arrservice
假设有4个服务需要更新 'abcd','pqrs,'xyz','def'
有时会更新所有服务,有时会更新所有服务中的某些服务,有时甚至不会更新任何服务。
我既没有异常也没有错误。 在使用带有这些服务的select来检查同一查询的地方,我得到了它的记录,但是同时更新对它们不起作用。
String queryStm="Update table set column1='abc',column2=:time,servertime=:servertime where service IN :arrservice"
Query query = em.createNativeQuery(queryStm);
query.setParameter("arrservice", arrService);
query.setParameter("time", time);
query.setParameter("servertime", new Timestamp(new Date().getTime()));
LOG.debug("No updated" + query.executeUpdate());
如果假设有4个服务要更新,则上面的日志有时还会给出4,3,2和0。
我不确定这是怎么回事。为什么它不总是更新全部4个。 我在服务器上使用Postgres 10,以下是我包含在pom中的依赖项:-
<dependency>
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.1-901.jdbc4</version>
</dependency>
任何帮助都是非常有意义的。