`
shmily
  • 浏览: 6625 次
  • 性别: Icon_minigender_1
最近访客 更多访客>>
社区版块
存档分类
最新评论

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

阅读更多
开发项目过程中,根据需求需要查询时随机产生记录,因此,我通过产生随机数获取随机值,进行查询记录。
但在开发过程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(随机数);
进行查询。
不知道是否还有更好的解决办法。
分享到:
评论
2 楼 抛出异常的爱 2006-09-28  
shmily 写道
个人觉得RandomUtils.nextInt(1000)也可以实现随机查询的条件,但每次只能产生一条随机数,在需求要求中需要查询多条的情况下就有点问题了。


你写的东西得不到隋机数
种子不变
那么得到的数也不会变的。。。。。
一般会用下一回的结果当种子放入到函数中
static int  z = 1000;
public int getR(){
z = RadomUtils.nextInt(z);
return z;
}
1 楼 shmily 2006-09-28  
个人觉得RandomUtils.nextInt(1000)也可以实现随机查询的条件,但每次只能产生一条随机数,在需求要求中需要查询多条的情况下就有点问题了。

相关推荐

    Oracle里取随机数的几种具体的方法

    Oracle 是一个功能强大的关系数据库管理系统,它提供了多种方法来生成随机数。随机数生成是许多应用程序的重要组件,例如抽奖活动、验证码生成、密码生成等。在本文中,我们将介绍 Oracle 里取随机数的几种具体的...

    Oracle里抽取随机数的多种方法

    在 Oracle 中抽取随机数是许多应用场景中常见的问题,例如在某个活动中需要随机取出一些符合条件的用户,以颁发获奖通知或其它消息。本文将通过实例讲解如何抽取随机数的多种方法。 首先,我们可以使用 Oracle 自带...

    Oracle插入随机数

    为了实现向Oracle数据库中插入随机数的目标,我们首先需要创建一个自定义函数`F_Random_ZeroOrOne`。该函数接收一个数值参数,并根据这个数值返回0或1。这里使用了`DBMS_RANDOM.VALUE()`函数生成一个0到1之间的...

    混合同余法产生随机数和M序列产生方法(算例及matlab程序)

    根据给定文件的信息,本文将详细探讨混合同余法生成随机数的方法以及M序列的产生方式,包括如何基于M序列生成逆M序列及其相应的Matlab实现。 ### 一、混合同余法产生随机数 #### 1.1 原理介绍 混合同余法是一种...

    汇编语言产生随机数并运算程序

    汇编语言 产生随机数并运算 汇编语言 产生随机数并运算

    使用tcl脚本产生随机数

    使用tcl脚本产生随机数

    C语言线性同余法产生随机数.rar_C语言线性同余法产生随机数_seed

    `C语言线性同余法产生随机数.h` 文件可能是包含函数声明的头文件,可能定义了一个用于生成随机数的函数,例如: ```c #ifndef _LINEAR_CONGRUENTIAL_H_ #define _LINEAR_CONGRUENTIAL_H_ unsigned int linear_...

    Keil C51 中产生随机数的方法

    在Keil C51开发环境中,生成随机数是嵌入式系统编程中常见的需求,尤其在游戏、加密算法、测试...为了提高随机性的质量,可以考虑使用硬件时钟等物理量作为种子来源,从而避免每次程序运行时都产生相同的随机数序列。

    乘同余法产生随机数

    系统辨识中利用乘同余法产生服从0,1分布的随机数

    MFC实现产生随机数

    总结起来,通过MFC在VC++中实现生成随机数的功能,你需要创建一个MFC对话框应用程序,添加一个按钮控件,处理按钮点击事件,然后在事件处理函数中使用C++的标准库生成随机数。这个过程涉及了MFC的消息映射、控件交互...

    受限波尔茨曼机RBM_DBN深度学习网络训练和测试matlab仿真,数据库为随机数矩阵,可替换为其他数据库+包含程序操作视频

    受限波尔茨曼机RBM_DBN深度学习网络训练和测试matlab仿真,数据库为随机数矩阵,可替换为其他数据库+包含程序操作视频 注意事项(仿真图预览可参考博主博客里面"同名文章内容"。): 使用matlab2022a或者高版本仿真...

    ADC产生随机数

    由于ADC的输出是固定的数字范围(例如12位ADC输出0-4095),可以对这个值进行取模操作,使其落入需要的随机数范围内。例如,取模1000可以得到0-999之间的随机整数。 4. **优化随机性**:为了获得更好的随机性,可以...

    汇编语言产生随机数并运算

    在“汇编语言产生随机数并运算”这个主题中,我们将探讨如何利用汇编语言生成随机数以及如何对这些随机数进行算术运算。 随机数在各种应用程序中都有广泛的应用,比如模拟、加密、游戏、统计计算等。在汇编语言中,...

    verilog产生高斯随机数

    LFSR的工作原理是基于一个线性同余方程,通过一系列非线性函数(如异或操作)来更新其状态,从而产生看似随机的输出序列。 在生成均匀随机数时,我们通常会选择一个足够大的LFSR,以确保产生的序列具有足够的随机性...

    用c语言产生随机数

    在C语言中,生成随机数是编程中常见的需求,尽管计算机生成的随机数实际上是伪随机数,因为它们是通过算法产生的,而非真正的不可预测的随机过程。在C语言中,我们可以利用标准库提供的rand()函数来生成伪随机数,而...

    产生随机数模拟操作系统内多线程工作的状态

    1)处理机调度及其实现; 2)进程状态及其状态转换; 3)进程控制块PCB及其作用。

    C语言产生随机数详解

    C语言产生随机数详解 本文档详细叙述了srand和rand函数的使用方法和注意事项。在C语言中,rand函数可以用来产生随机数,但是这不是真真意义上的随机数,是一个伪随机数,是根据一个数,我们可以称它为种子,以某个...

    产生随机数的方法

    在这个示例中,`srand(time(NULL))`确保了每次运行程序时,`rand()`函数都会根据当前系统时间产生一个新的种子,从而生成不同的随机数。`1 + rand() % 10`则生成1到10之间的随机整数,并通过`printf()`打印出来。 ...

    高斯分布产生随机数及其估计

    该程序时高斯分布产生随机数并对其参数进行估计

Global site tag (gtag.js) - Google Analytics