ADO的分页技术(100分)

  • 主题发起人 主题发起人 shxcn
  • 开始时间 开始时间
S

shxcn

Unregistered / Unconfirmed
GUEST, unregistred user!
怎样做Ado的分页,谁能提供一个例子做参考.
 
我也很想知道
关注
 
ado有分页技术的属性,想当容易!
 
诸如pagesize,absolutepage等等,意义都很明确,没什么难的啊
 
ADO的分页技术并不能在大数据量的时候提高效率,还是用sql语句控制比较好,详细参见
以前一篇帖子:http://www.delphibbs.com/delphibbs/dispq.asp?lid=1083587
 
我以前回答的

在Adodataset中有一个Recordset的属性,通过它可以进行数据的分页
代码如下:
var rowcount:integer;
Pagecount:integer;
Reccount:integer;
.....
begin
with Adodataset1 do
begin
open;
Reccount:=recordcount; //获取Adodataset的记录数

Recordset.Set_PageSize (10); //假设每个数据页要有10笔数据
rowcount:=recordset.pagesize;

Pagecount:=Recordset.PageCount; //获得页数,假如记录数为27,pagesize是10,那么页数就是3
Recordset.Set_AbsolutePage (3); //假设你需要第3页的数据,也就是第21到27笔数据

//不要让AbsolutePage大于pagecount,这个例子是3

showmessage(inttostr(Adodataset1.Recordset.AbsolutePosition));//这里会显示“21”

//开始显示数据
repeat
//在这里处理数据
Recordset.Fields.Item[N].Value;//数据集的第N个字段内容

rowcount:=rowcount-1;
Recordset.MoveNext
until (Recordset.EOF ) or (rowcount=0);//最后一页记录数可能比pagesize要小。
..........
end;
end;
这个方法是通过对Recordset操作获取指定范围内的数据的例子,数据的显示要你自己完成,比如加到表格里。

 
到处有例子啊, 或者请到左轻侯那下载个ASP代码, 那里面就有.
 
to kkyy:
请你发一个例子给我,或给我下载左轻侯ASP代码的地址。谢谢!
E-Mail:shxcn@sina.com
 
多人接受答案了。
 
后退
顶部