简单的UPDATE查询“不支持DML操作”


问题内容

Not supported for DML operations使用以下HQL时出现错误…

@Query("UPDATE WorkstationEntity w SET w.lastActivity = :timestamp WHERE w.uuid = :uuid")
void updateLastActivity(@Param("uuid") String uuid, @Param("timestamp") Timestamp timestamp);

是什么原因引起的?鉴于我在Google中发现的结果很少,这似乎不是常见的错误。


问题答案:

在hibernate用户论坛中检查发布的hibernatehql错误:不支持DML操作

您最有可能打过电话

querySt.list();

供您UPDATE查询。相反,您应该致电

querySt.executeUpdate();