hibernate - 在eclipse hibernate工具中删除hql

时间:2009-12-29 18:30:04

标签: hibernate

我尝试在eclipse的HQL工具中执行删除查询,如下所示

delete from Address address where address.id = 6

但我得到了

org.hibernate.hql.QueryExecutionRequestException: Not supported for DML operations

请告诉我,我做错了。 谢谢。

4 个答案:

答案 0 :(得分:24)

在更新方法上尝试注释@Modifying

答案 1 :(得分:3)

我有同样的问题。您的问题不是使用DML ...第一个建议发布了DML解决方案的链接,但您的问题是针对SQL。

这适用于SQL。

String sql = "delete from ServiceProviderMapping where id=7";
Query query = hibernateSession.createQuery(sql);
query.executeUpdate();

答案 2 :(得分:1)

请尝试以下方法:

final String hql = "delete from Job where jobId = :id";
Query query = session.createQuery(hql).setLong("id", jobId);

query.executeUpdate();

答案 3 :(得分:0)

This post建议尝试手动打开会话,然后运行删除。