MDAC 2.5 SDK - OLE DB Providers
Cursor Service for OLE DB
As an OLE DB service component, the Cursor Service is frequently used in conjunction with other service components. Indeed, unless you want to create an empty recordset, other providers are necessary to supply the rowset data to load into the Cursor Service.
The OLE DB Remoting Provider is an OLE DB service provider that allows client applications to retrieve and update rowsets from a remote server as if they were on the local computer. When integrated into a scenario that employs your data provider and other service components, it allows access to remote data while giving your application the same functionality as if the data were local. The Cursor Service provides this functionality. It buffers a remoted rowset in its temporary table structures, giving the same appearance as a rowset obtained locally.
For detailed information about OLE DB remoting services, see the OLE DB Remoting Provider, or for more information about using the Remoting Provider within ADO, see the "Microsoft OLE DB Remoting Provider" topic in the ADO Programmer's Reference.
The Data Shaping Service for OLE DB allows an application to create relationships that had not previously existed among keys, fields, or recordsets. Using the Cursor Service, the Data Shaping Service shapes the data retrieved from your provider in a hierarchical format you can specify. The Cursor Service, invoked using the IRowset interface, can then modify the data by creating a relationship between the child and parent, inserting or deleting recordsets as needed or creating new aggregations.
For detailed information about the data shaping (hierarchy) function, see the Data Shaping Service for OLE DB documentation. For more information about data shaping within ADO, see the "Microsoft Data Shaping Service for OLE DB" topicin the ADO Programmer's Reference.
Once data from the original data store is saved to a file on your computer, you can use the Persistence Provider to load that data into your application for viewing or modifying. For the load process, your application opens an unpopulated recordset and identifies the specific local file. The Persistence Provider is created to load the locally saved data into the Cursor Service. After the rowset has been wrapped in a recordset, its state information and metadata are exposed.
The following illustration shows the Cursor Service loading process from a persisted file.
For detailed information about the OLE DB Persistence Provider, see the OLE DB Persistence Provider documentation. For more information about using the Persistence Provider within ADO, see the "Microsoft OLE DB Persistence Provider" topic in the ADO Programmer's Reference.