我在阅读Hibernate HQL教程时发现HQL不支持,INSERT INTO..VALUES..但是INSERT INTO..SELECT..HQL仅支持从另一个表插入。
INSERT INTO..VALUES..
INSERT INTO..SELECT..
假设我要在一个表中插入相同的值,并且该数据不是来自任何其他表,即该值不在任何其他表中,那么我该如何在HQL中执行此操作?
另外,是否想知道HQL中此类限制的背后原因?
如果数据来自另一个表,则无需使用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 …形式。 您不能指定要插入的显式值。