sybase的分页处理
来源:互联网 发布:游戏碎片整理软件 编辑:程序博客网 时间:2024/05/21 22:46
对于小数据量,我们的分页可以通过ibatis来完成,但是对于万级以上的数据来说,这就是个不现实的事情了。
首先,ibatis的分页是通过一次性将数据提取到内存中,再根据需要筛选数据。所以,对于百万、千万级的数据量这是一个相当不靠谱的事情,所以网上关于ibatis分页的讨论也相当的少,这也算是大家一个共识吧。
其次,对于不同的数据库它们都有自己的读取行信息的方法,例如:mysql可以通过limit n to m 来完成。oracle 可以通过 rownum > n and rownnum < m来完成等等。而对于sybase来说,它只有一个top可以控制行信息,但是当我们需要读取中间数据的时候,这个top就显得力不从心了,那么我们如何来实现分页呢??答案是:临时表。这也算是sybase特有的吧!!
书说简短,我们通过配置文件来说明!!
<!-- 导出积分对账数据-分页获取 -->
<procedureid="exportReconData"resultMap="IntegralItemResult"parameterClass="java.util.Map">
<![CDATA[
DECLARE @start int, @limit int
set @start= #start#
set @limit= #count#
if @start <=0
set @start=1
if @start = 1
begin
select top $count$ * from
]]>
<dynamic>
<includerefid="fromIntegralItem"/>
</dynamic>
order by usertimesac
<![CDATA[
end
else
begin
DECLARE @maxrow int
set @maxrow = @start+@limit -1
set rowcount @maxrow
select rownum=identity(12),* into tempdb..$table_tmp$ from
]]>
<dynamic>
para_map.put("table_tmp","integral_temp_" + now_time);
<includerefid="fromIntegralItem"/>
</dynamic>
order by usertime asc
<![CDATA[
set rowcount 0
select * from tempdb..$table_tmp$ where rownum >= @start
DROP TABLE tempdb..$table_tmp$
end
]]>
</procedure>
- sybase的分页处理
- ibatis处理sybase分页问题
- ibatis处理sybase分页的问题(还没有解决)
- sybase分页的实现
- sybase分页的实现
- sybase 分页
- sybase分页存储过程的实现
- 关于Sybase的跳号处理
- sybase 数据库 处理小数问题的解决
- Sybase分页存储过程
- Sybase分页查询
- Sybase 分页查询语句
- sybase 分页取数据的sql怎么写?
- 在SYBASE中进行分页查询的方法
- Sybase,Oracle,sqlserver中sql分页的方法汇总
- DataGridView 的分页处理
- 数据库的分页处理
- MVC分页的处理
- 当今世界十大经典算法
- Css控制显示文本个数
- IOS开发之使用Speex格式实现简单的语音聊天功能(二)
- JAVA文件的上传与下载的例子
- Facebook API学习获取FB用户信息
- sybase的分页处理
- mysqldump导出 触发器,存储过程,事件,函数
- Codility -- PermMissingElem
- 使用 HTML5 webSocket API实现即时通讯的功能
- 安卓各大系统属性设置,及屏幕锁定,点亮屏幕,连接wifi设置
- 使用jQuery中的getJSON()方法获取数据
- jQueryValidate的js效果出不来需要注意的几点
- InputFilter方法filter 解释
- Protocol Buffers在Objective-C上的使用