The following table shows the mandatory and optional interfaces defined by OLE DB for a rowset object.
Rowset
Interface |
Required? |
Implemented by OLE DB Template Classes? |
IAccessor | Mandatory | Yes |
IColumnsInfo | Mandatory | Yes |
IConvertType | Mandatory | Yes |
IRowset | Mandatory | Yes |
IRowsetInfo | Mandatory | Yes |
IColumnsRowset | Optional | No |
IConnectionPointContainer | Optional | Yes, through ATL |
IRowsetChange | Optional | No |
IRowsetIdentity | Required for level-0 providers | Yes |
IRowsetLocate | Optional | No |
IRowsetScroll | Optional | No |
IRowsetUpdate | Optional | No |
ISupportErrorInfo | Optional | No |
The wizard-generated rowset object implements IAccessor, IRowset, and IRowsetInfo through inheritance. The IAccessorImpl binds both output columns. The IRowset interface handles fetches rows and data. The IRowsetInfo interface handles the rowset properties.