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
, InsertRow
e DeleteRows
).
Importante
È consigliabile leggere la documentazione seguente PRIMA di tentare di implementare il provider:
Capitolo 6 del riferimento per programmatori OLE DB
Vedere anche come viene usata la
RUpdateRowset
classe nell'esempio UpdatePV .
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