Die Klassen und Schnittstellen für die OLE DB-Anbietervorlagen können in die folgenden Kategorien gruppiert werden. Das Referenzmaterial enthält außerdem Informationen über die Makros für OLE DB-Anbietervorlagen.
Die Klassen verwenden die folgende Benennungskonvention: eine Klasse mit dem Muster IWidgetImpl benannt würde stellen Sie eine Implementierung der Schnittstelle IWidget.
Sitzungsklassen
Erstellt einen neuen Befehl aus dem Session-Objekt und gibt die angeforderte Schnittstelle auf den neu erstellten Befehl. Optionale Schnittstelle auf Sitzungsobjekte.
Sitzungseigenschaften implementiert durch Aufrufen eine statische Funktion definiert durch die Eigenschaft Zuordnung festgelegt. Die Eigenschaftensetzuordnung sollte in Ihrer Session-Klasse angegeben werden. Verbindliche Schnittstelle für Sitzungen.
Ruft einen Schnittstellenzeiger auf das Datenquellenobjekt. Obligatorische Schnittstelle in der Sitzung.
Öffnet, und gibt einen Rowset, der alle Zeilen aus einer einzelnen Basistabelle oder Index enthält. Verbindliche Schnittstelle für ein Session-Objekt.
Schemarowset-Klassen
Stellt eine Standardimplementierung der OLE DB-Rowset ohne mehrfache Vererbung von vielen Umsetzung Schnittstellen. Die einzige Methode, die Sie für die Implementierung bereitstellen müssen ist Ausführen.
Stellt eine Implementierung der IRowset -Schnittstelle, die die Basis Rowset-Schnittstelle ist.
Stellt eine Standardimplementierung für das Zeilenhandle, die in der IRowsetImpl -Klasse verwendet wird. Ein Zeilenhandle ist logischerweise ein einzigartigen Tag für einen Ergebnis-Datensatz. IRowsetImpl erstellt eine neue CSimpleRow für jede Zeile im IRowsetImpl::GetNextRows angefordert.
OLE DB benötigt Anbieter, eine HACCESSORumzusetzen, ein Tag, um ein Array von DBBINDING -Strukturen ist. Bietet HACCESSOR-s, die Adressen der BindType Strukturen sind. Vorgeschrieben für Befehle und rowsets.
Implementiert die Rowseteigenschaften mithilfe der Eigenschaft Zuordnung definiert in Ihrem Command-Klasse festgelegt. Verbindliche Schnittstelle für rowsets.
Delegaten für eine statische Funktion definiert durch die Providerspaltenzuordnung. Obligatorische Schnittstelle auf Befehle und rowsets.
Gibt Informationen über die Verfügbarkeit von Typkonvertierungen auf einen Befehl oder ein Rowset. Vorgeschrieben für Index-Rowsets, Befehle und Rowsets. Implementiert die IConvertType -Schnittstelle durch Delegieren an das Objekt Konvertierung von OLE DB bereitgestellt.
Die IDBSchemaRowset -Schnittstelle und die templatized Creator-Funktion CreateSchemaRowset implementiert.
Command-Klassen
Legt fest, speichert und gibt den Befehlstext zurück. Vorgeschrieben für Befehle.
Stellt eine Implementierung der ICommand -Schnittstelle. Diese Schnittstelle ist nicht sichtbar, sondern wird von ICommandTextImplbehandelt. Eine verbindliche Schnittstelle für das Command-Objekt.
Diese Implementierung der Schnittstelle ICommandProperties wird durch eine statische Funktion definiert durch das Makro BEGIN_PROPSET_MAP bereitgestellt. Vorgeschrieben für Befehle.
Andere Command-Klassen sind IColumnsInfoImpl und IAccessorImpl, in die Schemarowset-Klassen weiter oben beschriebenen.
Datenquellenklassen
Erstellt und löscht die Verbindung mit dem Verbraucher. Obligatorische Schnittstelle auf Datenquellenobjekte und optionale Schnittstelle auf Enumeratoren.
IDBProperties ist eine verbindliche Schnittstelle für Datenquellenobjekte und eine optionale Schnittstelle für Enumeratoren. Jedoch, wenn ein Enumerator IDBInitializeverfügbar macht, muss es IDBProperties (Eigenschaften für die Datenquelle) machen.
Erstellt eine neue Sitzung aus der Datenquelle-Objekt, und gibt die angeforderte Schnittstelle auf die neu erstellte Sitzung zurück. Obligatorische Schnittstelle auf Datenquellenobjekte.
Andere Klassen
Implementiert Eigenschaften für eine Vielzahl von OLE DB-Eigenschaft-Schnittstellen (z. B. IDBProperties, ISessionPropertiesund IRowsetInfo).
Siehe auch
Liste der OLE DB-Consumervorlagen, Home Page für OLE DB-Vorlagenklassen