使用三层结构。
后台用ADOQuery + DataSetProvider
前台用ClientDataset,可以设置其PacketRecords
具体可以参见李维的三本书。

解决方案 »

  1.   

    按照一般的做法,只要主表和从表的数据集控件(table)的datasource建立了主从关系,那么主表移动的时候,从表数据就会自动显示。这是不需要编码实现的现在按照你的想法,那就是把主从表之间的关系先人为断开。然后在主表移动的时候,在afterscroll中处理以下事件:取得主从表之间关键字段的字段值,然后通过该值在从表查询对应的数据并显示至于要分页显示的,则需要再使用一个字段,该字段做为分页的标记,每次查询时,就用top 100 where 分页标记 > 上一页标记 即可
      

  2.   

    你可能用的是Dbgrid,如果用Stringgrid你可以任意的自己来控制。
      

  3.   

    to cobi(我是小新) 是不是我还要增加一个字段bh, 数字类型。 你的思路我大致了解。  例如A类 bh, 1,2,3,4,...
        b类 bh, 1,2,3,4,...
    至于要分页显示的,则需要再使用一个字段,该字段做为分页的标记,每次查询时,就用top 100 where 分页标记 > 上一页标记 即可这句话的意思我理解有点不清。 请指教。
      

  4.   

    to  cobi(我是小新) 我还有一个问题。就是如果我数据库里有10万条记录。我这样做分页显示不会影响速度吧, 是不是能够提高效率。用ado连接的。
      

  5.   

    现已新建了一个数据库MIAN, 里面新建了两个表。 两个表的结构是: 表1名:lbb(类别表) (主表) 
    字段1,        字段2 
    类别(lb)主键     图片(image) 表2名: jbxx(基本信息表) (明细表) 
    字段1,       字段2,     字段3 
    lb表(外键) bh(主键) image
      

  6.   

    如果是用DBGRID显示,那设置每页显示100条记录有什么意义呢?,直接设置DBgrid的显示属性,让它一页显示多少条不就行了吗?除非在网页上,不用dbgrid
      

  7.   

    不是在dbgrid显示。 也不是在网页显示的,是在dbcgrids显示的。
      

  8.   

    你可以在主表的AfterScroll中动态给细表的DataSource付值(满足条件就付为主表的DataSet不满足就付为Nil),