Partager via


CRowsetImpl, classe

Fournit une implémentation standard du jeu de lignes OLE DB sans que l'héritage multiple de nombreuses interfaces d'implémentation.

template <
   class T,
   class Storage,
   class CreatorClass,
   class ArrayType = CAtlArray<Storage>, 
   class RowClass = CSimpleRow, 
   class RowsetInterface = IRowsetImpl < T, IRowset > 
>
class CRowsetImpl :  
   public CComObjectRootEx<CreatorClass::_ThreadModel>, 
   public CRowsetBaseImpl<T, Storage, ArrayType, RowsetInterface>, 
   public IRowsetInfoImpl<T, CreatorClass::_PropClass>

Paramètres

  • T
    La classe de l'utilisateur qui dérive d' CRowsetImpl.

  • Storage
    La classe d'enregistrement utilisateur.

  • CreatorClass
    La classe qui contient les propriétés de l'ensemble de lignes ; en général la commande.

  • ArrayType
    La classe qui deviendra stockage des données du jeu de lignes.Ce paramètre correspond par défaut à CAtlArray, mais elle peut être une classe qui prend en charge la fonctionnalité requise.

Membres

xzwszaah.collapse_all(fr-fr,VS.110).gifMéthodes

NameFromDBID

Extrait une chaîne de DBID et imprime dans bstr passé.

SetCommandText

Valide et enregistre DBIDs dans les deux chaînes (m_strCommandText et m_strIndexText).

xzwszaah.collapse_all(fr-fr,VS.110).gifMéthodes substituables

GetColumnInfo

Récupère des informations sur la colonne pour une requête client particulière.

GetCommandFromID

Vérifie si l'une ou l'autre ou les deux paramètres contiennent des valeurs de chaîne, et le cas échéant, copie les valeurs de chaînes aux données membres m_strCommandText et m_strIndexText.

ValidateCommandID

Vérifie si l'une ou l'autre ou les deux DBIDs contiennent des valeurs de chaîne et, si tel est le cas, les copie dans ses données membres m_strCommandText et m_strIndexText.

xzwszaah.collapse_all(fr-fr,VS.110).gifMembres de données

m_rgRowData

Par défaut, CAtlArray qui templatizes sur l'argument template d'enregistrement utilisateur à CRowsetImpl.Une autre classe de type tableau peut être utilisée en modifiant l'argument template d' ArrayType à CRowsetImpl.

m_strCommandText

Contient la commande initiale du jeu de lignes.

m_strIndexText

Contient l'index initial du jeu de lignes.

Notes

CRowsetImpl fournit des substitutions sous la forme d'upcasts statiques.Les méthodes contrôlent la façon dont un jeu de lignes donné validera le texte de la commande.Vous pouvez créer votre propre classe de style d' CRowsetImplen faisant les interfaces d'implémentation multiple-héritées.La seule méthode pour laquelle vous devez fournir l'implémentation est Exécuter.Selon le type de jeu de lignes vous créez, les méthodes de création attendront des signatures différentes pour Exécuter.Par exemple, si vous utilisez CRowsetImplclasse dérivée à implémenter un jeu de lignes du schéma, la méthode de Exécuter possède la signature suivante :

HRESULT Execute(LONG* pcRows, ULONG cRestrictions, const VARIANT* rgRestrictions)

Si vous créez CRowsetImplclasse dérivée à implémenter un ensemble de lignes de commande ou de session, la méthode de Exécuter possède la signature suivante :

HRESULT Execute(LONG* pcRows, DBPARAMS* pParams)

Pour implémenter CRowsetImpll'un des - les méthodes dérivées de Exécuter , vous devez remplir vos mémoires tampons de données internes (m_rgRowData).

Configuration requise

Header: atldb.h