MDAC 2.5 SDK - OLE DB Programmer's Reference
OLE DB Interfaces
IRowsetUpdate enables consumers to delay the transmission of changes made with IRowsetChange to the data store. This interface also enables consumers to undo changes before transmission.
IRowsetUpdate is optional.
Rowsets that want to allow delayed transmission of changes and to support undo capabilities implement IRowsetUpdate. Generally, this requires the rowset to locally cache a copy of each row as it is changed with IRowsetChange::SetData.
If IRowsetUpdate is not requested as a property of the rowset, it must not be exposed by the rowset.
If IRowsetUpdate is exposed on the rowset, changes made through IRowsetChange are buffered in the rowset and not transmitted to the data store until IRowsetUpdate::Update is called; this is known as delayed update mode. If IRowsetUpdate is not exposed on the rowset, changes made through IRowsetChange are immediately transmitted to the data store; this is known as immediate update mode. For more information, see "Changing Data" in Chapter 5, "Updating Data in Rowsets."
The consumer calls the methods in IRowsetChange to update, delete, and insert rows. The rowset buffers these changes. When the consumer is ready to transmit these changes to the data store, it calls IRowsetUpdate::Update. Before calling Update, the consumer can back out any changes with IRowsetUpdate::Undo.
Method | Description |
GetOriginalData | Gets the data most recently fetched from or transmitted to the data store; does not get values based on pending changes. |
GetPendingRows | Returns a list of rows with pending changes. |
GetRowStatus | Returns the status of rows. |
Undo | Undoes any changes made to a row since it was last fetched or since Update was called for it. |
Update | Transmits any changes made to a row since it was last fetched or since Update was called for it. |