 <p>I think the closest thing to what you seem to want is a <em>Hierarchical Recordset</em> in ADO. These can go multiple levels deep, or just two levels (a Recordset contining Chapter fields) as in your request:</p> <blockquote> <p>Regardless of which way the parent Recordset is formed, it will contain a chapter column that is used to relate it to a child Recordset. If you wish, the parent Recordset may also have columns that contain aggregates (SUM, MIN, MAX, and so on) over the child rows. Both the parent and the child Recordset may have columns which contain an expression on the row in the Recordset, as well as columns which are new and initially empty.</p> <p>You can nest hierarchical Recordset objects to any depth (that is, create child Recordset objects of child Recordset objects, and so on).</p> <p>You can access the Recordset components of the shaped Recordset programmatically or through an appropriate visual control.</p> </blockquote> <p>The key to this is using the Data Shaping Service, an OLEDB Provider which "rides on top of" your underlying Provider (even if only the local Cursor Service Provider <em>implied</em> when using client-side cursors).</p> <p>Some description and a crude example can be found in the <a href="http://support.microsoft.com/kb/196029" rel="nofollow">How To Create Hierarchical Recordsets Programmatically</a> Support article.</p> <p>More details and reference material can be found at <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/ms676186%28v=vs.85%29.aspx" rel="nofollow">Data Shaping</a>, including the SQL-like language used to define Shape commands.</p> <hr> <p>Or are you asking about <em>paged</em> Recordsets, as in <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/ms681431%28v=vs.85%29.aspx" rel="nofollow">PageSize Property (ADO)</a> instead?</p>