Udostępnij za pośrednictwem


Szablony dostawców OLE DB — kompendium

Klasy i interfejsy szablonów dostawcy OLE DB można pogrupować w następujące kategorie. Materiał referencyjny zawiera również informacje o makrach szablonów dostawców OLE DB.

Klasy używają następującej konwencji nazewnictwa: klasa o nazwie ze wzorcem IWidgetImpl zapewnia implementację interfejsu IWidget.

Klasy sesji

IDBCreateSessionImpl
Tworzy nową sesję z obiektu źródła danych i zwraca żądany interfejs w nowo utworzonej sesji. Obowiązkowy interfejs w obiektach źródła danych.

ISessionPropertiesImpl
Implementuje właściwości sesji przez wywołanie funkcji statycznej zdefiniowanej przez mapę zestawu właściwości. Mapa zestawu właściwości powinna być określona w klasie sesji. Obowiązkowy interfejs w sesjach.

Klasy zestawu wierszy

CRowsetImpl

Zapewnia standardową implementację zestawu wierszy OLE DB bez konieczności dziedziczenia wielu interfejsów implementacji. Jedyną metodą, dla której należy podać implementację, jest Execute.

CSimpleRow
Udostępnia domyślną implementację dojścia wiersza, która jest używana w IRowsetImpl klasie . Uchwyt wiersza jest logicznie unikatowym tagiem dla wiersza wyników. IRowsetImpl Tworzy nowy CSimpleRow dla każdego wiersza żądanego w pliku IRowsetImpl::GetNextRows.

IAccessorImpl
Ole DB wymaga od dostawców zaimplementowania tagu HACCESSOR, który jest tagiem w tablicy DBBINDING struktur. Zawiera HACCESSORadresy BindType struktur. Obowiązkowe w zestawach wierszy i poleceniach.

IColumnsInfoImpl
Delegowanie do funkcji statycznej zdefiniowanej przez mapę kolumn dostawcy. Obowiązkowy interfejs w zestawach wierszy i poleceniach.

IConvertTypeImpl
Zawiera informacje na temat dostępności konwersji typów w poleceniu lub w zestawie wierszy. Obowiązkowe w poleceniach, zestawach wierszy i zestawach wierszy indeksu. Implementuje interfejs przez delegowanie IConvertType do obiektu konwersji dostarczonego przez OLE DB.

IDBSchemaRowsetImpl
Implementuje IDBSchemaRowset interfejs i funkcję CreateSchemaRowsettemplatized creator .

IOpenRowsetImpl
Otwiera i zwraca zestaw wierszy zawierający wszystkie wiersze z pojedynczej podstawowej tabeli lub indeksu. Obowiązkowy interfejs dla obiektu sesji.

IRowsetChangeImpl
Implementuje interfejs IRowsetChange OLE DB, który umożliwia aktualizowanie wartości kolumn w istniejących wierszach, usuwanie wierszy i wstawianie nowych wierszy.

IRowsetCreatorImpl
Ta klasa dziedziczy z obiektu IObjectWithSite i zastępuje obiekt IObjectWithSite::SetSite. IRowsetCreatorImpl Wykonuje te same funkcje co IObjectWithSite , ale także włącza właściwości DBPROPCANSCROLLBACKWARDS OLE DB i DBPROPCANFETCHBACKWARDS.

IRowsetIdentityImpl
Implementuje IRowsetIdentity interfejs, który pozwala porównać, czy dwa wiersze danych są identyczne, czy nie.

IRowsetImpl
Zapewnia implementację interfejsu IRowset , który jest podstawowym interfejsem zestawu wierszy.

IRowsetInfoImpl
Implementuje właściwości zestawu wierszy przy użyciu mapy zestawu właściwości zdefiniowanej w klasie poleceń. Obowiązkowy interfejs w zestawach wierszy.

IRowsetLocateImpl
Implementuje interfejs IRowsetLocate OLE DB, który pobiera dowolne wiersze z zestawu wierszy. Aby obsługiwać zakładki OLE DB w zestawie wierszy, ustaw zestaw wierszy dziedziczyć z tej klasy.

IRowsetNotifyCP
Implementuje funkcje emisji, aby doradzać odbiornikom w punkcie IID_IRowsetNotify połączenia zmian w zawartości zestawu wierszy. Konsumenci, którzy obsługują powiadomienia implementują IRowsetNotify i rejestrują je w tym punkcie połączenia.

IRowsetUpdateImpl
Implementuje interfejs IRowsetUpdate OLE DB, który umożliwia konsumentom opóźnienie transmisji zmian wprowadzonych za pomocą funkcji IRowsetChange do źródła danych i cofanie zmian przed przesłaniem.

Klasy poleceń

ICommandImpl
Zapewnia implementację interfejsu ICommand . Ten interfejs nie jest widoczny, ale jest obsługiwany przez ICommandTextImplprogram . Obowiązkowy interfejs w obiekcie polecenia.

ICommandPropertiesImpl
Ta implementacja interfejsu ICommandProperties jest dostarczana przez funkcję statyczną zdefiniowaną przez BEGIN_PROPSET_MAP makro. Obowiązkowe w poleceniach.

ICommandTextImpl
Ustawia, przechowuje i zwraca tekst polecenia. Obowiązkowe w poleceniach.

IDBCreateCommandImpl
Tworzy nowe polecenie z obiektu sesji i zwraca żądany interfejs w nowo utworzonym poleceniu. Opcjonalny interfejs w obiektach sesji.

Inne klasy poleceń to IColumnsInfoImpl i IAccessorImpl, opisane w sekcji Klasy zestawu wierszy powyżej.

Klasy źródeł danych

IDBInitializeImpl
Tworzy i usuwa połączenie z użytkownikiem. Obowiązkowy interfejs w obiektach źródła danych i opcjonalny interfejs w modułach wyliczania.

IDBPropertiesImpl
IDBProperties jest obowiązkowym interfejsem dla obiektów źródła danych i opcjonalnym interfejsem dla modułów wyliczania. Jeśli jednak moduł wyliczający uwidacznia IDBInitializeelement , musi uwidocznić IDBProperties (właściwości w źródle danych).

IGetDataSourceImpl
Uzyskuje wskaźnik interfejsu do obiektu źródła danych. Obowiązkowy interfejs w sesji.

Inne klasy

CUtlProps
Implementuje właściwości dla różnych interfejsów właściwości OLE DB (na przykład IDBProperties, , ISessionPropertiesi IRowsetInfo).

IErrorRecordsImpl

Implementuje interfejs IErrorRecords OLE DB, dodając rekordy do i pobierając rekordy z elementu członkowskiego danych.

Zobacz też

Szablony konsumentów OLE DB — dokumentacja
Szablony OLE DB