Compartilhar via


CRecordset::Update

Termina uma operação de AddNew ou de Editar salvando os novos dados ou editados na fonte de dados.

virtual BOOL Update( );

Valor de retorno

Diferente de zero se um registro foi atualizado com êxito; se não 0 se nenhuma coluna foi alterado. Se nenhum registro foi atualizado, ou se mais de um registro foi atualizado, uma exceção é lançada. Uma exceção é lançada também para qualquer outra falha na fonte de dados.

Comentários

Chamar essa função de membro após uma chamada para a função de membro de AddNew ou de Editar . Esta chamada é necessário para concluir a operação de AddNew ou de Editar .

Dica

Se você tiver implementado a linha em massa que pesquisa, você não pode chamar Atualizar.Isso resultará em uma declaração falha.Embora a classe CRecordset não fornece um mecanismo para atualizar linhas em massa de dados, você pode escrever suas próprias funções usando a função da API SQLSetPosODBC.Para obter mais informações sobre a linha em massa que pesquisa, consulte o artigo conjunto de registros: Para buscar registros em massa (ODBC).

AddNew e Editar preparam um buffer de edição em que os dados adicionados ou editados são colocados salvando para a fonte de dados. Atualizar salva os dados. Somente os campos marcados como modificado ou detectados são atualizados.

Se a fonte de dados suportar transações, você pode fazer a parte da chamada de Atualizar seu AddNew ou chamada de Editar correspondente (e) de uma transação. Para obter mais informações sobre transações, consulte o artigo transação (ODBC).

Aviso

Se você chamar Atualizar sem primeira chamada AddNew ou Editar, Atualizar gera CDBException.Se você chamar AddNew ou Editar, você deve chamar Atualizar antes de chamar uma operação de Mover ou antes que você feche o conjunto de registros ou conexão da fonte de dados.Caso contrário, as alterações são perdidas sem notificação.

Para obter detalhes sobre manipular falhas de Atualizar , consulte o artigo conjunto de registros: Como atualizar registros dos conjuntos de registros (ODBC).

Exceções

Esse método pode lançar exceções do tipo CDBException*.

Exemplo

Consulte o artigo transação: Executando uma transação em um conjunto de registros (ODBC).

Requisitos

Cabeçalho: afxdb.h

Consulte também

Referência

Classe CRecordset

Gráfico da hierarquia

CRecordset::Edit

CRecordset::AddNew

CRecordset::SetFieldDirty

Classe CDBException