使用現有的 ADO 資料錄集
若要混合使用 OLE DB 消費者樣板和 Active Data Object (ADO),請使用 ADO 開啟資料錄集 (對應至 OLE DB 消費者樣板中的資料列集)。當您擁有資料錄集時,請執行下列動作以連接至 OLE DB 資料列集:
呼叫 QueryInterface 來取得 IRowset 和 IAccessor 指標。
IRowset* lpRowset = NULL; IAccessor* lpAccessor = NULL; lpUnk->QueryInterface(IID_IRowset, (void**)&lpRowset); lpUnk->QueryInterface(IID_IAccessor, (void**)&lpAccessor);
注意事項 lpUnk 會指向 ADO 資料錄集的 IUnknown 物件。
將存取子和資料列集附加到其適用的 OLE DB 消費者樣板類別 (Template Class)。
CRowset rs; CAccessor accessor; accessor.AddAccessorInfo(0ul); // 0 is the ordinal of an ADO accessor rs.m_spRowset.Attach(lpRowset); // use the Attach method of CComPtr<> rs.SetAccessor(accessor);