JPA / Hibernate:转义HQL关键字

时间:2013-01-31 06:20:18

标签: hibernate jpa escaping hql

这类似于How to escape reserved words in Hibernate's HQL。但我使用JPA,因此该解决方案不适用。

那么,如何在JPA中转义HQL关键字?

示例查询:( count是违法行为。)

em.createQuery("INSERT INTO Count (id, count) SELECT 1, ?").setParameter(1, id).executeUpdate();

这个jira HHH-3811仍在打开。 不确定是否相关,因为它是关于SQL关键字,而不是HQL关键字。

1 个答案:

答案 0 :(得分:0)

您可以尝试这样的事情:

em.createQuery("INSERT INTO Count c (c.id, c.count) SELECT 1, ?").setParameter(1, id).executeUpdate();

这应该让JPA明白你的意思是属性,而不是关键词。