在原生 ADO 中,提供了一个将返回的数据集进行分页显示的功能:PageSize ,它能将从数据库返回的结果按 PageSize 的数量来分页显示。但 Delphi 好像不支持这个功能,用 Delphi ADO 数据集控件 adodataset1.Recordset.PageSize 这个属性设置时,居然出错。请问有什么办法能够解决吗?

解决方案 »

  1.   

    看看李维的ADO/MTS/COM+这本书吧,里面有这方面的内容,我试过,可以的。
      

  2.   

    http://soft.269.net/SoftWareList.asp?ClasstreePos=21
      

  3.   

    用Adoquery.CacheSize可以完成你说的
      

  4.   

    AdoConn := CreateOleObject('ADODB.CONNECTION');
      AdoConn.Open(G_EnvionmentVar.DBConnString);
      AdoRst := CreateOleObject ('ADODB.RECORDSET');
      AdoRst.CursorLocation := 2;                                                   //adUseServer
      AdoRst.PageSize := 20;
    ................
      AdoRst.Open(strSql, AdoConn, 1, 1, 1);                                        //adOpenKeyset, adLockReadOnly, adCmdText
      intPage := 1;
    ...............
      AdoRst.AbsolutePage := intPage;
    =================
    建议看MSDN之ADO介绍