Web*_*net 33 java sql hibernate hql spring-mvc
我在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);
Run Code Online (Sandbox Code Playgroud)
可能导致问题的原因是什么?鉴于我在Google中找到的结果很少,这似乎不是一个常见的错误.
小智 38
检查post hibernate hql错误: hibernate用户论坛中的DML操作不支持.
你最有可能打过电话
querySt.list();
Run Code Online (Sandbox Code Playgroud)
为您的UPDATE查询.相反,你应该打电话
querySt.executeUpdate();
Run Code Online (Sandbox Code Playgroud)
我在注释方面也遇到了同样的问题。搜索并做了一些技巧后,我能够解决它。在将 DML 操作与 JPA 一起使用时,您需要验证以下一些步骤。
使用注释
@Modifying(org.springframework.data.jpa.repository.Modifying)和@Transactional(org.springframework.transaction.annotation.Transactional)所需的方法。
使用void的方法的返回类型。
例如:-
@Modifying
@Query("UPDATE ProcedureDTO o SET o.isSelectedByUser =?1")
@Transactional
public void getListOfProcedureBasedOnSelection(Boolean isSelected);```
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
27752 次 |
| 最近记录: |