Hibernate hql: 只支持用法 INSERT INTO ... SELECT ... FROM
下面是两个例子:
[java] view plain copy print ?- Query query=session.createQuery("insert into UserInfo(username,password,email) values(?,?,?)");
- Exception in thread "main" org.hibernate.hql.ast.QuerySyntaxException: expecting OPEN, found 'values' near line 1, column 22 [insert into Userinfo values('aaf')]
- at org.hibernate.hql.ast.QuerySyntaxException.convert(QuerySyntaxException.java:54)
- at org.hibernate.hql.ast.QuerySyntaxException.convert(QuerySyntaxException.java:47)
- at org.hibernate.hql.ast.ErrorCounter.throwQueryException(ErrorCounter.java:82)
- at org.hibernate.hql.ast.QueryTranslatorImpl.parse(QueryTranslatorImpl.java:284)
- at org.hibernate.hql.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:182)
- at org.hibernate.hql.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:136)
- at org.hibernate.engine.query.HQLQueryPlan.
(HQLQueryPlan.java:101) - at org.hibernate.engine.query.HQLQueryPlan.
(HQLQueryPlan.java:80) - at org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:94)
- at org.hibernate.impl.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:156)
- at org.hibernate.impl.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:135)
- at org.hibernate.impl.SessionImpl.createQuery(SessionImpl.java:1651)
- at com.xmetc.hibernate.test.HQL07.main(HQL07.java:23)
- //String queryString3 = "insert into Userinfo values()";//不支持.
- String queryString3 = "insert into Userinfo select ... from .. ";//支持.
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
