注:不是Asp web编程,我是想让结果集显示在DBGrid中,实现分页的效果

解决方案 »

  1.   

    我试了,没问题啊。是不是你的ADOQuery1没有打开?
      

  2.   

    ADOQuery1.Recordset.PageSize:=10; 
    放在ADOQuery1.Open之后的话,确实没有错误,但这时ADOQuery1已经打开
    还是将全部数据取到了数据集中,分页效果也出不来,DBGrid中显示的还是
    全部记录。问题是有大量的数据,如10万条以上,我希望它一页一页地取,而不希望一次
    性将全部数据取过来。以加快程序检索速度,同时也减少网络上的数据流量。
      

  3.   

    MoveBy(RecordNo);
    for I:=0 to 20 do
    begin
      显示记录!
    end;
      

  4.   

    如果用SQL语句"SELECT TOP n ...",来控制的话,好象是可以解决的。
    但这样的话,PageSize这些属性又有什么用呢?
      

  5.   

    有一个办法就是不用DBGrid来显示,用 ListView来显示,这样你就可以控制显示那些记录了!虽然编程麻烦点。