Recordset: Como conjuntos de registros atualizam registros (ODBC)
Este tópico se aplica a classes MFC ODBC.
Além de sua capacidade de selecionar registros de uma fonte de dados, conjuntos de registros podem (opcionalmente) atualizar ou excluir registros selecionados ou adicionar novos registros.Três fatores determinam atualizabilidade do recordset: se a origem de dados conectada é atualizável, as opções especificadas quando você cria um objeto recordset e o SQL é criado.
Observação |
---|
SQL em que o CRecordset com base em objeto pode afetar atualizabilidade do recordset.Por exemplo, se sua SQL contém uma associação ou um GROUP BY cláusula, MFC define a atualizabilidade FALSE. |
Observação |
---|
Este tópico se aplica aos objetos derivados de CRecordset em qual linha em massa buscando não foi implementada.Se você estiver usando em massa linha buscando, consulte Recordset: buscar registros em massa (ODBC). |
Este tópico explica:
Sua função na atualização do conjunto de registros e o que faz a estrutura para você.
O conjunto de registros como um buffer de edição e as diferenças entre dynasets e instantâneos.
Recordset: Como AddNew, editar e excluir trabalho (ODBC) descreve as ações dessas funções do ponto de vista do conjunto de registros.
Conjunto de registros: Mais sobre atualizações (ODBC) conclui a história de atualização de registros, explicando como transações afetam atualizações, como fechar um conjunto de registros ou rolagem afeta atualizações em andamento e como as 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 usando conjuntos de registros para adicionar, editar ou excluir registros, juntamente com o que a estrutura faz para você.
Atualizando registros: Você e o Framework
Você |
A estrutura |
---|---|
Determine se a fonte de dados é atualizável (ou appendable). |
Fontes incorporadas funções de membro para atualizabilidade ou appendability a fonte de dados de teste. |
Abra um recordset atualizável (de qualquer tipo). |
|
Determinar se o conjunto de registros é atualizável chamando CRecordset atualizar funções como CanUpdate ou CanAppend. |
|
Chame funções de membro para adicionar, editar e excluir registros de recordset. |
Gerencia a mecânica de troca de dados entre seu objeto recordset e a fonte de dados. |
Opcionalmente, use transações para controlar o processo de atualização. |
Fontes de CDatabase funções de membro para oferecer suporte a transações. |
Para obter mais informações sobre transações, consulte Transação (ODBC).
O Buffer de edição
Tomadas coletivamente, os membros de um conjunto de registros de dados do campo servem como um buffer de edição contém um registro — o registro atual.Operações de atualização usam esse buffer para operar no registro atual.
Quando você adiciona um registro, o buffer de editar é usado para criar um novo registro.Quando você terminar de adicionar o registro, o registro que estava anteriormente atual se torna atual novamente.
Quando você atualiza um registro, edit (Editar) buffer é usado para definir os membros de dados de campo do conjunto de registros para novos valores.Quando você terminar de atualizar, o registro atualizado é ainda atual.
Quando você chamar AddNew ou Editar, o registro atual é armazenado para possam ser restaurado posteriormente, conforme necessário.Quando você chamar Excluir, o registro atual não é armazenado, mas está marcado como excluído e você deve rolar para outro registro.
Observação |
---|
O buffer de editar não desempenha nenhuma função na exclusão de registros.Quando você exclui o registro atual, o registro é marcado como excluído e o conjunto de registros é "não em um registro" até que você rolar para um registro diferente. |
Dynasets e Snapshots
Dynasets atualizar o conteúdo de um registro enquanto você rola para o registro.Snapshots são representações estáticas de registros, para que o conteúdo do registro não é atualizados a menos que você chamar Requery.Para usar toda a funcionalidade de dynasets, você deve estar trabalhando com um driver ODBC que esteja de acordo com o nível correto de suporte à API do ODBC.Para obter mais informações, consulte ODBC e Dynaset.