既存の ADO レコードセットの使用
OLE DB コンシューマー テンプレートと Active データ オブジェクト (ADO: Active Data Object) を混在させるには、ADO を使用してレコードセットを開きます。このレコードセットは、OLE DB コンシューマー テンプレートの行セットに相当します。レコードセットを開いたら、次の手順に従って OLE DB 行セットに接続します。
IRowset ポインターと IAccessor ポインターに対して QueryInterface を呼び出します。
IRowset* lpRowset = NULL; IAccessor* lpAccessor = NULL; lpUnk->QueryInterface(IID_IRowset, (void**)&lpRowset); lpUnk->QueryInterface(IID_IAccessor, (void**)&lpAccessor);
[!メモ]
lpUnk は、ADO レコードセットの IUnknown オブジェクトを指します。
アクセサーと行セットを適切な OLE DB コンシューマー テンプレート クラスに割り当てます。
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);