Befehle und Tabellen
Mit Befehlen und Tabellen können Sie auf Rowsets zugreifen; d. h. öffnen Sie Rowsets, führen Sie Befehle aus, und binden Sie Spalten. Die Klassen CCommand und CTable instanziieren die Befehls- bzw. Tabellenobjekte. Diese Klassen werden von CAccessorRowset abgeleitet, wie in der folgenden Abbildung dargestellt.
Befehls- und Tabellenklassen
In der vorherigen Tabelle kann es sich um einen beliebigen Accessortyp handeln, TAccessor
der in Accessor-Typen aufgeführt ist. TRowset
kann ein beliebiger Rowsettyp sein, der in Rowset-Typen aufgeführt ist. TMultiple
Gibt den Ergebnistyp (ein einzelnes oder mehrere Resultset) an.
Mit dem ATL OLE DB Consumer-Assistenten können Sie angeben, ob Sie ein Befehls- oder Tabellenobjekt verwenden möchten.
Für Datenquellen ohne Befehle können Sie die
CTable
Klasse verwenden. In der Regel verwenden Sie sie für einfache Rowsets, die keine Parameter angeben und keine mehrere Ergebnisse erfordern. Diese einfache Klasse öffnet eine Tabelle in einer Datenquelle mithilfe eines von Ihnen angegebenen Tabellennamens.Für Datenquellen, die Befehle unterstützen, können Sie stattdessen die
CCommand
Klasse verwenden. Rufen Sie zum Ausführen eines Befehls "Open" für diese Klasse auf. Alternativ können Sie aufrufenPrepare
, um einen Befehl vorzubereiten, den Sie mehrmals ausführen möchten.CCommand
hat drei Vorlagenargumente: einen Accessortyp, einen Rowsettyp und einen Ergebnistyp (CNoMultipleResults
standardmäßig oderCMultipleResults
). Wenn Sie angebenCMultipleResults
, unterstützt die Klasse dieIMultipleResults
CCommand
Schnittstelle und behandelt mehrere Rowsets. Das DBVIEWER-Beispiel zeigt, wie sie die mehrfachen Ergebnisse behandeln.