欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

请教Hibernate操作oracle数据库产生随机数问题 HibernateOracleSQLORM 

程序员文章站 2022-07-12 18:33:54
...
开发项目过程中,根据需求需要查询时随机产生记录,因此,我通过产生随机数获取随机值,进行查询记录。
但在开发过程Hibernate在执行SQL语句时,却执行产生随机数函数时报错。
代码:
tringBuffer hql = new StringBuffer("select trunc(dbms_random.value(min(rec_id),max(rec_id)+1)) from MemberInfo tbl ");
List list = getHibernateTemplate().find(hql.toString());
return list;

在数据库执行可以得到结果,但在程序中执行出现异常,请大家指正。不胜感激。
报错如下:
org.springframework.orm.hibernate3.HibernateQueryException: unexpected AST node:
在网上查询后,无法得到答案。
无奈之下只得提前产生随机数,既而查询时进行
Query q = s.createQuery(hql.toString());
q.setFirstResult(随机数);
q.setMaxResults(随机数);
进行查询。
不知道是否还有更好的解决办法。