Freigeben über


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.

Diagram showing the relationship between CCommand and CTable.
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 aufrufen Prepare , um einen Befehl vorzubereiten, den Sie mehrmals ausführen möchten.

    CCommand hat drei Vorlagenargumente: einen Accessortyp, einen Rowsettyp und einen Ergebnistyp (CNoMultipleResultsstandardmäßig oder CMultipleResults). Wenn Sie angebenCMultipleResults, unterstützt die Klasse die IMultipleResultsCCommand Schnittstelle und behandelt mehrere Rowsets. Das DBVIEWER-Beispiel zeigt, wie sie die mehrfachen Ergebnisse behandeln.

Siehe auch

OLE DB-Consumervorlagen