我正在创建一个Named StoredProcedureQuery来访问Postgres数据库中的存储过程,以更新值或将值插入表中。我想重用那个StoredProcedureQuery,因为我有一组要更新的数据。从跟踪日志和表的内容看起来,存储过程仅被称为第一次迭代。有没有办法重用StoredProcedureQuery并重新绑定参数?
private void updateValues(long id, List<Object> entities) {
StoredProcedureQuery query = entityManager.createNamedStoredProcedureQuery("update_data");
for (Object entity : entities) {
query.setParameter("id", id);
query.setParameter("field1", entity.getField1());
query.executeUpdate();
}
}