一尘不染

在Hibernate中使用HQL在一个表中插入数据

hibernate

我在阅读Hibernate HQL教程时发现HQL不支持,INSERT INTO..VALUES..但是INSERT INTO..SELECT..HQL仅支持从另一个表插入。

假设我要在一个表中插入相同的值,并且该数据不是来自任何其他表,即该值不在任何其他表中,那么我该如何在HQL中执行此操作?

另外,是否想知道HQL中此类限制的背后原因?


阅读 188

收藏
2020-06-20

共1个答案

一尘不染

如果数据来自另一个表,则无需使用hql进行插入。

只需获取对您实体的引用,保留一个Hibernate会话,然后调用save()。

根据http://docs.jboss.org/hibernate/orm/4.0/devguide/zh-
CN/html/ch04.html#d0e2116

INSERT语句的伪语法

插入到EntityName properties_list select_statement

仅支持INSERT INTO … SELECT …形式。 您不能指定要插入的显式值。

2020-06-20