Partilhar via


Conjunto de registros: Como os conjuntos de registros atualizam registros (ODBC)

Este tópico se aplica às classes ODBC do MFC.

Além de sua capacidade de selecionar registros de uma fonte de dados, os conjuntos de registros podem (opcionalmente) atualizar ou excluir os registros selecionados ou adicionar novos registros. Três fatores determinam a capacidade de atualização de um conjunto de registros: se a fonte de dados conectada é atualizável, as opções especificadas ao criar um objeto de conjunto de registros e o SQL criado.

Observação

O SQL no qual o CRecordset objeto se baseia pode afetar a capacidade de atualização do conjunto de registros. Por exemplo, se o SQL contiver uma junção ou uma cláusula GROUP BY , o MFC definirá a capacidade de atualização como FALSE.

Observação

Este tópico aplica-se a objetos derivados de CRecordset nos quais a busca de linhas em massa não foi implementada. Se você estiver usando a busca de linha em massa, consulte Recordset: Buscando registros em massa (ODBC).

Este tópico explica:

Recordset: How AddNew, Edit, and Delete Work (ODBC) descreve as ações dessas funções do ponto de vista do conjunto de registros.

Recordset: More About Updates (ODBC) completa a história de atualização do conjunto de registros explicando como as transações afetam as atualizações, como fechar um conjunto de registros ou rolar afeta as atualizações em andamento e como suas atualizações interagem com as atualizações de outros usuários.

Sua função na atualização do conjunto de registros

A tabela a seguir mostra sua função no uso de conjuntos de registros para adicionar, editar ou excluir registros, juntamente com o que a estrutura faz por você.

Atualização do Recordset: Você e a estrutura

Você O quadro
Determine se a fonte de dados é atualizável (ou anexável). Fornece funções membro do CDatabase para testar a atualização ou a anexação da fonte de dados.
Abra um conjunto de registros atualizável (de qualquer tipo).
Determine se o conjunto de registros é atualizável chamando CRecordset funções de atualização como CanUpdate ou CanAppend.
Chame funções de membro do conjunto de registros para adicionar, editar e excluir registros. Gerencia a mecânica de troca de dados entre o objeto do conjunto de registros e a fonte de dados.
Opcionalmente, use transações para controlar o processo de atualização. Fornece funções membro CDatabase para dar suporte a transações.

Para obter mais informações sobre transações, consulte Transação (ODBC).

O buffer de edição

Tomados coletivamente, os membros de dados de campo de um conjunto de registros servem como um buffer de edição que contém um registro — o registro atual. As operações de atualização usam esse buffer para operar no registro atual.

  • Quando você adiciona um registro, o buffer de edição é usado para criar um novo registro. Quando você terminar de adicionar o registro, o registro que era atual anteriormente se tornará atual novamente.

  • Quando você atualiza (edita) um registro, o buffer de edição é usado para definir os membros de dados de campo do conjunto de registros para novos valores. Quando terminar de atualizar, o registo atualizado ainda será o atual.

Quando você chama AddNew ou Edit, o registro atual é armazenado para que possa ser restaurado posteriormente, conforme necessário. Quando você chama Delete, o registro atual não é armazenado, mas é marcado como excluído e você deve rolar para outro registro.

Observação

O buffer de edição não desempenha nenhum papel na exclusão de registros. Quando eliminas o registo atual, o registo é marcado como eliminado e o conjunto de registos está "fora de um registo" até que avances para um registo diferente.

Dynasets e instantâneos

Os Dynasets atualizam o conteúdo de um registro à medida que você rola para o registro. Os instantâneos são representações estáticas dos registros, portanto, o conteúdo de um registro não é atualizado, a menos que você chame Requery. Para usar todas as funcionalidades dos dynasets, você deve estar trabalhando com um driver ODBC que esteja em conformidade com o nível correto de suporte à API ODBC. Para obter mais informações, consulte ODBC e Dynaset.

Ver também

Conjunto de registros (ODBC)
Conjunto de registros: Como AddNew, editar e excluir trabalho (ODBC)