Classe IRowsetChangeImpl
A implementação de Modelos OLE DB da interface IRowsetChange na especificação OLE DB.
Sintaxe
template <
class T,
class Storage,
class BaseInterface = IRowsetChange,
class RowClass = CSimpleRow,
class MapClass = CAtlMap <RowClass::KeyType, RowClass*>>
class ATL_NO_VTABLE IRowsetChangeImpl : public BaseInterface
Parâmetros
T
Uma classe derivada de IRowsetChangeImpl
.
Storage
O registro do usuário.
BaseInterface
A classe base para a interface, como IRowsetChange
.
RowClass
A unidade de armazenamento do identificador de linha.
MapClass
A unidade de armazenamento para todos os identificadores de linha mantidos pelo provedor.
Requisitos
Cabeçalho: atldb.h
Membros
Métodos de interface (usados com IRowsetChange)
Nome | Descrição |
---|---|
DeleteRows | Exclui linhas do conjunto de linhas. |
InsertRow | Insere uma linha no conjunto de linhas. |
SetData | Define valores de dados em uma ou mais colunas. |
Método de implementação (retorno de chamada)
Nome | Descrição |
---|---|
FlushData | Substituído pelo provedor para confirmar dados em seu repositório. |
Comentários
Essa interface é responsável por operações de gravação imediatas em um armazenamento de dados. "Imediato" significa que quando o usuário final (a pessoa que usa o consumidor) faz alterações, essas alterações são transmitidas imediatamente para o armazenamento de dados (e não podem ser desfeitas).
IRowsetChangeImpl
implementa a interface OLE DB, IRowsetChange
, que permite atualizar valores de colunas em linhas existentes, excluir linhas e inserir novas linhas.
A implementação de Modelos OLE DB dá suporte a todos os métodos base (SetData
, InsertRow
e DeleteRows
).
Importante
É altamente recomendável que você leia a documentação a seguir ANTES de tentar implementar seu provedor:
Capítulo 6 da Referência do programador OLE DB
Consulte também como a classe
RUpdateRowset
é usada no exemplo UpdatePV.
IRowsetChangeImpl::DeleteRows
Exclui linhas do conjunto de linhas.
Sintaxe
STDMETHOD (DeleteRows )(HCHAPTER /* hReserved */,
DBCOUNTITEM cRows,
const HROW rghRows[],
DBROWSTATUS rgRowStatus[]);
Parâmetros
Consulte IRowsetChange::DeleteRows na Referência do programador OLE DB.
IRowsetChangeImpl::InsertRow
Cria e inicializa uma nova linha no conjunto de linhas.
Sintaxe
STDMETHOD (InsertRow )(HCHAPTER /* hReserved */,
HACCESSOR hAccessor,
void* pData,
HROW* phRow);
Parâmetros
Consulte IRowsetChange::InsertRow na Referência do programador OLE DB.
IRowsetChangeImpl::SetData
Define valores de dados em uma ou mais colunas.
Sintaxe
STDMETHOD (SetData )(HROW hRow,
HACCESSOR hAccessor,
void* pSrcData);
Parâmetros
Consulte IRowsetChange::SetData na Referência do programador OLE DB.
IRowsetChangeImpl::FlushData
Substituído pelo provedor para confirmar dados em seu repositório.
Sintaxe
HRESULT FlushData(HROW hRowToFlush,
HACCESSOR hAccessorToFlush);
Parâmetros
hRowToFlush
[in] Identificador para as linhas dos dados. O tipo dessa linha é determinado a partir do argumento de modelo RowClass da classe IRowsetImpl
(CSimpleRow
por padrão).
hAccessorToFlush
[in] Identificador para o acessador, que contém informações de associação e informações de tipo em seu PROVIDER_MAP
(consulte IAccessorImpl).
Valor de retorno
Um valor HRESULT padrão.
Confira também
Modelos de Provedor OLE DB
Arquitetura de modelo do provedor do OLE DB