Classe CRowsetImpl

Fornece uma implementação de conjunto de linhas padrão do OLE DB sem herança múltipla de várias interfaces de implementação.

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>

Parâmetros

  • T
    Classe do usuário que deriva de CRowsetImpl.

  • Storage
    A classe de registro do usuário.

  • CreatorClass
    A classe que contém propriedades para o conjunto de linhas; normalmente o comando.

  • ArrayType
    A classe que atuará sistema autônomo armazenamento de dados do conjunto de linhas.Este parâmetro padrão é CAtlArray, mas pode ser qualquer classe que oferece suporte a funcionalidade necessária.

Comentários

CRowsetImpl fornece substituições na forma de upcasts estático. Os métodos de controlam a maneira na qual um determinado conjunto de linhas irá validar texto do comando.Você pode criar seus próprios CRowsetImpl-classe de estilo, tornando suas interfaces de implementação herdadas múltiplo. O único método para o qual você deve fornecer implementação é Executar.Dependendo do tipo do conjunto de linhas que você está criando, os métodos de criador esperam assinaturas diferentes para Executar.Por exemplo, se você estiver usando um CRowsetImpl-classe derivada para implementar um conjunto de registros de esquema, o Executar método terá a seguinte assinatura:

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

Se você estiver criando um CRowsetImpl-classe para implementar um comando ou conjunto de registros da sessão, derivada do Executar método terá a seguinte assinatura:

HRESULT Execute(LONG* pcRows, DBPARAMS* pParams)

Para implementar qualquer o CRowsetImpl-derivado Executar métodos, você deve popular seus buffers de dados internos (m_rgRowData).

Requisitos

Cabeçalho: atldb.h

Consulte também

Outros recursos

CRowsetImpl membros