Transação: Como transações afetam atualizações (ODBC)

Atualizações para o a fonte de dados são gerenciados durante transações através do uso de um buffer de edição (o mesmo método usado fora de transações). Os membros de um conjunto de registros de dados do campo coletivamente servem como um buffer de edição que contém o registro atual, o que faz o recordset temporariamente durante um AddNew ou Editar. Durante um Excluir operação, o registro atual não é feita dentro de uma transação. Para obter mais informações sobre o buffer de edição e como atualizações de armazenam o registro atual, consulte Recordset: Como os conjuntos de registros atualizam registros (ODBC).

ObservaçãoObservação

Se você implementou a busca de linha em massa, não é possível chamar AddNew, Editar, ou Excluir. Em vez disso, você deve escrever suas próprias funções para executar atualizações à fonte de dados. Para obter mais informações sobre a busca de linha em massa, consulte Recordset: Buscar registros em massa (ODBC).

Durante a transações, AddNew, Editar, e Excluir operações podem ser confirmadas ou revertidas. Os efeitos de CommitTrans e reversão pode causar a não ser restaurado para o buffer de editar o registro atual. Para certificar-se de que o registro atual seja restaurado corretamente, é importante entender como o CommitTrans e reversão funções de membro de CDatabase trabalha com as funções de atualização do CRecordset.

Como CommitTrans afeta atualizações

A tabela a seguir explica os efeitos da CommitTrans em transações.

Como CommitTrans afeta atualizações

Operation

Status da fonte de dados

AddNewe atualizaçãoe CommitTrans

Novo registro são adicionados à fonte de dados.

AddNew(sem Atualização) e então CommitTrans

Novo registro é perdido. Não é adicionado à fonte de dados de registro.

Editar e atualizaçãoe CommitTrans

Edições comprometidas-se a fonte de dados.

Editar (sem atualização) e então CommitTrans

Edição do registro é perdidas. Registro permanecerá inalterado na fonte de dados.

Excluir , CommitTrans

Registros excluídos da fonte de dados.

Como a reversão afeta transações

A tabela a seguir explica os efeitos da reversão em transações.

Como a reversão afeta transações

Operation

Status do registro atual

Você também deve

Status da fonte de dados

AddNewe atualização, em seguida, reversão

O conteúdo do registro atual é armazenado temporariamente para liberar espaço para o novo registro. Novo registro é inserido no buffer de edição. Depois de atualização é chamado, o atual registro será restaurado para o buffer de edição.

 

Adição à fonte de dados feita por atualização é invertido.

AddNew(sem Atualização), em seguida, reversão

O conteúdo do registro atual é armazenado temporariamente para liberar espaço para o novo registro. Editar o buffer contém um novo registro.

Chame AddNew novamente para restaurar o buffer de edição para um registro vazio, uma nova. Ou ligue para Mover(0) para restaurar os valores antigos para o buffer de edição.

Porque atualização não foi chamado, não houve nenhuma alteração feita à fonte de dados.

Editar e atualização, em seguida, reversão

Uma versão não-editada do registro atual é armazenada temporariamente. Edições são feitas no conteúdo do buffer de edição. Depois de atualização é chamado, o não-editadas ainda temporariamente em que versão do registro é armazenado.

Dynaset: Role para desativar o registro atual depois de volta para restaurar a versão não-editada do registro para o buffer de edição.

Instantâneo: Chame Requery para atualizar o conjunto de registros da fonte de dados.

Altera a fonte de dados feita por atualização são revertidas.

Editar (sem atualização), em seguida, reversão

Uma versão não-editada do registro atual é armazenada temporariamente. Edições são feitas no conteúdo do buffer de edição.

Chame Editar novamente para restaurar a versão não-editada do registro para o buffer de edição.

Porque atualização não foi chamado, não houve nenhuma alteração feita à fonte de dados.

Excluir , reversão

O conteúdo do registro atual é excluído.

Chame Requery para restaurar o conteúdo do registro atual da fonte de dados.

Exclusão de dados da fonte de dados é invertido.

Consulte também

Referência

CDatabase Class

CRecordset Class

Conceitos

Transação (ODBC)

Transação (ODBC)

Transação: Executando uma transação em um conjunto de registros (ODBC)