MDAC 2.5 SDK - OLE DB Providers
OLE DB Persistence Provider
Hierarchical rowsets are handled differently by the OLE DB Persistence Provider. Foremost, the client must be able to support hierarchical rowsets.
Because the Persistence Provider's hierarchy is stored rowset by rowset, and not row by row, child rows are not visible. Therefore, to pass it in correct hierarchical format to the consumer, the hierarchy should be read back into the provider that created it.
For columns of type HCHAPTER, two additional pieces of information are persisted with the column metadata: relational information and calculated information. The metadata for each rowset is persisted in a top-level recursive fashion. Then the row data for each rowset is stored, also in a top-level recursive fashion. Data is retrieved from each rowset completely, without using the HCHAPTER value from the parent rows.
Parameterized hierarchies are not supported because the Persistence Provider does not support the command object.