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
Méthodes
Extrait une chaîne de DBID et imprime dans bstr passé. |
|
Valide et enregistre DBIDs dans les deux chaînes (m_strCommandText et m_strIndexText). |
Méthodes substituables
Récupère des informations sur la colonne pour une requête client particulière. |
|
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. |
|
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. |
Membres de données
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. |
|
Contient la commande initiale du jeu de lignes. |
|
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