首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HQL意外AST节点:意外AST节点:

HQL意外AST节点:意外AST节点:
EN

Stack Overflow用户
提问于 2015-06-24 00:21:33
回答 1查看 6.8K关注 0票数 2

我得到了一个例外:

代码语言:javascript
复制
unexpected AST node: query

我的问题是:

代码语言:javascript
复制
SELECT  u.user_id, u.username,u.email,u.phone,u.status,r.rolename 
FROM user_registration u, roles r 
WHERE u.user_id=r.role_id IN (
    select ur.role_id  from roles ur where ur.role_id=u.user_id
)

此查询在MySQL中运行,但在我的应用程序中不起作用

例外情况是:

代码语言:javascript
复制
SEVERE: Servlet.service() for servlet [spring] in context with path [/jaga] threw exception [Request processing failed; nested exception is org.hibernate.hql.ast.QuerySyntaxException: unexpected AST node: in near line 1, column 196 [SELECT  u.user_id, u.username,u.email,u.phone,u.status,r.rolename FROM com.jagahunt.admin.usermanagement.entity.User u, com.jagahunt.admin.usermanagement.entity.Role r WHERE u.user_id=r.role_id  IN (select ur.role_id  from com.jagahunt.admin.usermanagement.entity.Role ur where ur.role_id=u.user_id)]] with root cause
org.hibernate.hql.ast.QuerySyntaxException: unexpected AST node: in near line 1, column 196 [SELECT  u.user_id, u.username,u.email,u.phone,u.status,r.rolename FROM com.jagahunt.admin.usermanagement.entity.User u, com.jagahunt.admin.usermanagement.entity.Role r WHERE u.user_id=r.role_id  IN (select ur.role_id  from com.jagahunt.admin.usermanagement.entity.Role ur where ur.role_id=u.user_id)]
EN

回答 1

Stack Overflow用户

发布于 2015-06-24 13:43:23

这是您正在尝试执行的本机查询。

因此,您应该使用session.createSQLQuery(),而不是接受HQL实体查询的session.createQuery()

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31008250

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档