An Introduction to Data Shaping
Each of the columns within a shaped recordset can be defined as one of the following:
Data from a data provider
A reference to another recordset
A solution to an operation on a single row of this recordset
A solution to an operation on an entire column of a recordset
A completely new defined column
A recordset whose column contains another recordset is called a hierarchical recordset. Hierarchical recordsets can be nested to any depth. The recordset that contains another recordset is called the parent, while the contained recordset is called the child. When a parent recordset’s field (column), which represents another recordset, is read, ADO actually returns an instance of another Recordset object as the value of the field.
The field in the parent recordset that refers to a child recordset is
called a chapter. This Field object is appended
to the parent recordset and given a datatype of
adChapter.
To create shaped recordsets, ADO 2.0 introduced the Shape command syntax, which is explained later in this chapter (Section 9.3). Shape commands are used in conjunction with the OLE DB provider’s native command set, usually SQL. A Shape command is passed to the Source property of a Recordset object just like any other SQL statement.
In Version 2.1, ADO introduced the concept of reshaping. Reshaping allows a newly created recordset to have existing shaped recordsets as its children. There are four restrictions to reshaping:
You cannot add columns to an existing ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access