OLE DB uses an ActiveX controls notification model to implement notifications among OLE DB components and consumers. Notifications are used by groups of cooperating consumers sharing a rowset. All consumers and the rowset-generating actions are assumed to be working within the same transaction. Local notifications enable cooperating consumers sharing a rowset to be informed about actions on the rowset performed by their peers. For example, consider a form containing two data controls, one displaying data in a grid and the other displaying data as a two-dimensional histogram. Both controls receive their data from the same rowset and operate individually as consumers of the rowset. An end user can send an update to the rowset through the grid control. Notifications enable the other control to be informed of this change as it occurs, giving it the opportunity to update the histogram as appropriate and ultimately providing a consistent view of the data within the form. Consumers register their interest in receiving local notifications though IConnectionPointContainer. Consumers support the IRowsetNotify interface, which is called by the rowset as events occur.
Notifications in OLE DB define a basic mechanism on which to implement active data source behavior. IRowsetNotify represents one of many possible notification contracts between sources and sinks. Providers can define other notification contracts as needed.