Hibernate/Oracle'with'子句/ Native SQL

use*_*479 2 oracle hibernate

是否可以使用来自hibernate的Oracle'with'子句?

我有以下基本示例:

final String queryStr =
" with v_tbl as ( "+
" select distinct etc...";

final Query query = getSessionFactory().getCurrentSession().createQuery(queryStr);
final List results = query.list();
Run Code Online (Sandbox Code Playgroud)

我得到以下异常:

ERROR org.hibernate.hql.PARSER  - line 1:2: unexpected token: with
Run Code Online (Sandbox Code Playgroud)

我读了一篇建议切换到的文章:

<prop key="hibernate.query.factory_class">org.hibernate.hql.ast.ASTQueryTranslatorFactory</prop>
Run Code Online (Sandbox Code Playgroud)

但这似乎没有帮助.

有什么建议?

fyi,我正在使用Hibernate 3.6.7,Spring 3.0.6,Oracle 11g

WeM*_*are 6

您可以随时使用本机SQL查询

getSessionFactory().getCurrentSession().createSQLQuery(queryStr)
Run Code Online (Sandbox Code Playgroud)