【问题标题】:JPA/Hibernate: How to use INSERT JPQL?JPA/Hibernate:如何使用 INSERT JPQL?
【发布时间】:2013-01-31 05:50:46
【问题描述】:

这个 JPQL

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

抛出

org.hibernate.hql.internal.ast.QuerySyntaxException: expecting OPEN, found ')' near line 1, column 29 [INSERT INTO Count (id, count) SELECT 1, ?]

查询应该是什么样子?

我使用 JPA API 但实际上使用 HQL 是否重要? JPQL 不支持INSERT

在 JBoss AS 7.1.2 中使用 Hibernate 4.1.6。
参考:http://docs.jboss.org/hibernate/orm/4.1/devguide/en-US/html/ch11.html#d5e2637

【问题讨论】:

    标签: java hibernate jpa insert jpql


    【解决方案1】:

    由于count 是保留字,因此可以在其周围添加方括号,例如[count]

    【讨论】:

    • 你可能是对的,但是 [] 不起作用,我找不到如何转义这个关键字...
    • 那么这取决于数据库提供者。
    • 我认为它不是,因为它是对象属性,而不是列名。创建stackoverflow.com/questions/14619630/…
    猜你喜欢
    • 2019-05-12
    • 2012-09-26
    • 2023-04-03
    • 2016-04-13
    • 2010-09-16
    • 2019-10-27
    • 1970-01-01
    • 2018-06-08
    相关资源
    最近更新 更多