我们今天要向大家讨论的是Oracle查询指定记录数时出现的奇怪问题,我们首先是以相关代码的方式来引出所要讨论的问题,以下就是文章的详细内容介绍,希望会给你带来一些帮助在此方面。
首先看一段代码:
- dbo.getPreparedStatement
(”select * from (select * from Entity_HotLink where hotLinkSortId =
? and hotLinkStatus = ? order by hotLinkOrder ASC, lastModifiedDate DESC) where ROWNUM <= ?");- dbo.pstmt.setInt(1, hotLinkSortId);
- dbo.pstmt.setInt(2, hotLinkStatus);
- dbo.pstmt.setInt(3, count);
环境1:windows + oracle 10g 正常
环境2: Redhat E5.2 64bit + oracle 10g(RAC集群) 查询执行,但是返回记录数只有10条,不管你的count有多大。
改成
- dbo.getPreparedStatement
(”select * from (select * from Entity_HotLink where hotLinkSortId =
? and hotLinkStatus = ? order by hotLinkOrder ASC, lastModifiedDate DESC) where ROWNUM <= " + count);- dbo.pstmt.setInt(1, hotLinkSortId);
- dbo.pstmt.setInt(2, hotLinkStatus);
则都能正常查询记录。此问题比较奇怪有问题再研究研究。
上述的相关内容就是对Oracle查询指定记录数的奇怪问题的描述,希望会给你带来一些帮助在此方面。
【编辑推荐】
- Oracle初始参数与当前用户的实操
- Oracle密码文件的实际操作方案介绍
- 提高Oracle SQL的执行效率的3个方案
- Oracle存储过程定时执行2种方法
- 实现Oracle传输表空间的实际功能解析