ADOQuery+dbgrid如何实现分页?
我用下列代码却出错!!!哪位大虾解决一下
procedure TForm1.Button1Click(Sender: TObject);
begin
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select * from File ');
adoquery1.Open;
adoquery1.Recordset.PageSize:=10;
adoquery1.Recordset.AbsolutePage:=2;
dbgrid1.DataSource:=datasource1;
end;
问题点数:100、回复次数:4Top
1 楼zdcnow(磁效应)回复于 2002-10-10 12:31:19 得分 0
要确保:
adoquery1.Recordset.AbsolutePage < adoquery1.Recordset.PageCount
Top
2 楼wlw88(飞扬)回复于 2002-10-10 12:59:11 得分 0
确保了!!Top
3 楼wlw88(飞扬)回复于 2002-10-10 16:03:25 得分 0
怎么没有人回答,如果哪位能解决,我再加100分!Top
4 楼blucecat(广种薄收)回复于 2003-01-05 20:26:04 得分 80
参考
http://expert.csdn.net/Expert/topic/1060/1060054.xml?temp=.6728632Top
5 楼blucecat(广种薄收)回复于 2003-04-25 12:50:39 得分 20
--存贮过程说明:
--取得任意两行号之间的纪录,这样实现分页轻而易举
--@startNo 开始行号
--@endNo 终止行号
alter procedure pagination @startNo int ,@endNo int
as
declare @returnTable cursor
--set @startNo=10
--set @endNo=20
--改写一下下面这一句,如果表中本来就有自增字段,请不要选择自增字段
select IDENTITY(int,1,1) as pageID ,业主姓名 into #temp from 业主档案
select * from #temp where pageID>=@startNo and PageID<=@endNo
SET @returnTable = CURSOR
FORWARD_ONLY STATIC FOR
SELECT *
FROM #temp
OPEN @returnTable
--drop table @returnTableTop




