我正在尝试更新我的实体类,但我得到了:
javax.persistence.PersistenceException: Only select and delete statements are supported.
当我没有使用Google应用引擎时,这个确切的代码工作正常。 我的代码是:
em.getTransaction().begin();
Query query =
em.createQuery("UPDATE Profile p" +
"SET p.age = 1 " +
"WHERE p.email = :email" );
query.setParameter("newPoint", point);
query.setParameter("email", email);
int updateCount = query.executeUpdate();
em.getTransaction().commit();
所以我问如何更新实体查询?
答案 0 :(得分:2)
由于GAE数据存储区不支持直接更新数据存储区中字段的查询,因此您同样无法通过JPA API执行此操作。由于JPA从未设计用于其他类型的数据存储,因此您将看到不适用的功能。
通过查询检索对象,并手动更新它们。
当GAE提供完整的map-reduce开箱即用时,那样的东西可以支持