Compartilhar via


CDaoRecordset::SetFieldDirty

Chamar essa função de membro para embandeirar um membro de dados do campo do recordset como modificado ou como inalterado.

void SetFieldDirty( 
   void* pv, 
   BOOL bDirty = TRUE  
);

Parâmetros

  • pv
    Contém o endereço de um membro de dados do campo no conjunto de registros ou em NULO. Se NULO, coloca todos os membros de dados no conjunto de registros são sinalizados. (C++ NULO não é igual a zero na terminologia de banco de dados, que significa “não ter nenhum value ".)

  • bDirty
    Verdadeiro se o membro de dados do campo deve ser embandeirado como sujo alterado (“”). Se não Falso se o membro de dados do campo deve ser embandeirado como “limpa” (inalterado).

Comentários

Marcar como colocar inalterado garante que o campo não é atualizado.

Os membros alterados marcas de dados do campo da estrutura para garantir que serão gravados no registro na fonte de dados pelo mecanismo de troca do campo do registro de DAO (DFX). Altere o valor de um campo geralmente define o campo sujo automaticamente, então você precisará raramente de chamar SetFieldDirty você mesmo, mas às vezes você pode querer garantir que as colunas explicitamente estivessem atualizadas ou inseridas independentemente do valor está no membro de dados do campo. O mecanismo de DFX também emprega o uso de PSEUDONULO. Para obter mais informações, consulte CDaoFieldExchange::m_nOperation.

Se o mecanismo de armazenamento de não está sendo usado, altere o valor do campo não define automaticamente o campo como sujo. Em esse caso, será necessário definir explicitamente o campo como sujo. O sinalizador contido em este m_bCheckCacheForDirtyFields controla verificação automático do campo.

Dica

Chamar essa função de membro somente após você chamou Editar ou AddNew.

Usando NULO para o primeiro argumento da função aplicará a função para todos os campos de outputColumn , não campos de param em CDaoFieldExchange. Por exemplo, a chamada

SetFieldDirty(NULL);

definirá somente os campos de outputColumn a NULO; os campos de param não serão afetados.

Para trabalhar em param, você deve fornecer o endereço real individuais param que você deseja trabalhar em, como:

SetFieldDirty(&m_strParam);

Isso significa que você não pode definir todos os campos de param a NULO, como faria com campos de outputColumn .

SetFieldDirty é implementado com DoFieldExchange.

Requisitos

Cabeçalho: afxdao.h

Consulte também

Referência

Classe CDaoRecordset

Gráfico da hierarquia

CDaoRecordset::SetFieldNull

CDaoRecordset::SetFieldValue