CRecordset::DoFieldExchange

virtual privatevoid DoFieldExchange ( CFieldExchange * pFX );
lançar ( CDBException );

Parâmetros

pFX

Um ponteiro para um objeto CFieldExchange . O quadro será já configurou este objeto para especificar um contexto para a operação de troca de campo.

Observações

Quando não está implementado em massa linha buscando, a estrutura chama esta função de membro para automaticamente trocar dados entre os membros de dados de campo do seu objeto recordset e as colunas correspondentes do registro atual no origem de dados. DoFieldExchange também vincula os membros de dados de parâmetro, se houver, para espaços reservados de parâmetro na cadeia de caracteres de instrução SQL para seleção do conjunto de registros.

Se a busca de linha em massa é implementada, a estrutura chamará DoBulkFieldExchange. Para implementar em massa linha buscando, você deve especificar a opção de CRecordset:: useMultiRowFetch do parâmetro dwOptions na função de membro Abrir.

&Notanbsp;DoFieldExchange estará disponível somente se você estiver usando uma classe derivada de CRecordset. Se você tiver criado um objeto recordset diretamente de CRecordset, você deve chamar a função de membro GetFieldValue para recuperar dados.

A troca de dados de campo, chamados registro campo exchange (RFX), funciona em ambas as direções: de membros de dados de campo do objeto recordset para os campos do registro na fonte de dados e do registro on the fonte de dados para o objeto recordset.

A única ação que você normalmente deve tomar para implementar DoFieldExchange para sua classe derivada de conjunto de registros é criar a classe com ClassWizard e especificar os nomes e tipos de dados dos membros de dados de campo. Você também pode adicionar código para que ClassWizard grava para especificar os membros de dados de parâmetro ou para lidar com quaisquer colunas que você ligar dinamicamente. Para obter mais informações, consulte o artigo Recordset: vinculação de colunas de dados (ODBC) dinamicamente no Guia do programador do Visual C++.

Quando você declare sua classe derivada de conjunto de registros com ClassWizard, o assistente grava uma Substituir do DoFieldExchange para você, que é semelhante ao exemplo seguinte:

privatevoid CCustSet::DoFieldExchange (CFieldExchange pFX)
{
 nbsp; //{{AFX_FIELD_MAP(CCustSet)
   pFX - > SetFieldType(CFieldExchange::outputColumn);
   RFX_Text (pFX, "Nome", m_strName);
   RFX_Int (pFX, "Idade", m_wAge);
   //}}AFX_FIELD_MAP
}

Para obter mais informações sobre as funções RFX, consulte o tópico Registro campo Exchange funções.

Para obter mais exemplos e detalhes sobre DoFieldExchange, consulte o artigo registro de campo Exchange: Como RFX funciona. Para geral informações sobre RFX, consulte o artigo Registro campo Exchange. Ambos os artigos estão no Guia do programador do Visual C++.

Visão geral de CRecordsetMembros de classe | Gráfico de hierarquia

Co&nsulte tambémnbsp;CRecordset::m_nFields, CRecordset::m_nParams, CRecordset::DoBulkFieldExchange, CRecordset::GetFieldValue, CFieldExchange, registro campo Exchange funções

Index