Condividi tramite


Classe IRowsetChangeImpl

Implementazione dei modelli OLE DB dell'interfaccia IRowsetChange nella specifica OLE DB.

Sintassi

template <
   class T,
   class Storage,
   class BaseInterface = IRowsetChange,
   class RowClass = CSimpleRow,
   class MapClass = CAtlMap <RowClass::KeyType, RowClass*>>
class ATL_NO_VTABLE IRowsetChangeImpl : public BaseInterface

Parametri

T
Classe derivata da IRowsetChangeImpl.

Storage
Record utente.

BaseInterface
Classe di base per l'interfaccia, ad esempio IRowsetChange.

RowClass
Unità di archiviazione per l'handle di riga.

MapClass
Unità di archiviazione per tutti gli handle di riga mantenuti dal provider.

Requisiti

Intestazione: atldb.h

Membri

Metodi di interfaccia (usati con IRowsetChange)

Nome Descrizione
DeleteRows Elimina le righe dal set di righe.
InsertRow Inserisce una riga nel set di righe.
SetData Imposta i valori dei dati in una o più colonne.

Metodo di implementazione (callback)

Nome Descrizione
FlushData Sottoposto a override dal provider per eseguire il commit dei dati nell'archivio.

Osservazioni:

Questa interfaccia è responsabile delle operazioni di scrittura immediate in un archivio dati. "Immediato" significa che quando l'utente finale (l'utente che usa il consumer) apporta modifiche, tali modifiche vengono trasmesse immediatamente all'archivio dati (e non possono essere annullate).

IRowsetChangeImpl implementa l'interfaccia OLE DB IRowsetChange , che consente l'aggiornamento dei valori delle colonne nelle righe esistenti, l'eliminazione di righe e l'inserimento di nuove righe.

L'implementazione dei modelli OLE DB supporta tutti i metodi di base (SetData, InsertRowe DeleteRows).

Importante

È consigliabile leggere la documentazione seguente PRIMA di tentare di implementare il provider:

IRowsetChangeImpl::DeleteRows

Elimina le righe dal set di righe.

Sintassi

STDMETHOD (DeleteRows )(HCHAPTER /* hReserved */,
   DBCOUNTITEM cRows,
   const HROW rghRows[],
   DBROWSTATUS rgRowStatus[]);

Parametri

Vedere IRowsetChange::D eleteRows nella guida di riferimento per programmatori OLE DB.

IRowsetChangeImpl::InsertRow

Crea e inizializza una nuova riga nel set di righe.

Sintassi

STDMETHOD (InsertRow )(HCHAPTER /* hReserved */,
   HACCESSOR hAccessor,
   void* pData,
   HROW* phRow);

Parametri

Vedere IRowsetChange::InsertRow nella guida di riferimento per programmatori OLE DB.

IRowsetChangeImpl::SetData

Imposta i valori dei dati in una o più colonne.

Sintassi

STDMETHOD (SetData )(HROW hRow,
   HACCESSOR hAccessor,
   void* pSrcData);

Parametri

Vedere IRowsetChange::SetData nella guida di riferimento per programmatori OLE DB.

IRowsetChangeImpl::FlushData

Sottoposto a override dal provider per eseguire il commit dei dati nell'archivio.

Sintassi

HRESULT FlushData(HROW hRowToFlush,
   HACCESSOR hAccessorToFlush);

Parametri

hRowToFlush
[in] Handle per le righe per i dati. Il tipo di questa riga viene determinato dall'argomento del modello RowClass della IRowsetImpl classe (CSimpleRow per impostazione predefinita).

hAccessorToFlush
[in] Handle per la funzione di accesso, che contiene informazioni sull'associazione e informazioni sul tipo nel relativo PROVIDER_MAP (vedere IAccessorImpl).

Valore restituito

HRESULT standard.

Vedi anche

Modelli di provider OLE DB
Architettura dei modelli di provider OLE DB