Partilhar via


Método UpdateBatch

Grava todas as atualizações em lote pendentes no disco.

Sintaxe

  
recordset.UpdateBatch AffectRecords, PreserveStatus  

Parâmetros

AffectRecords
Opcional. Um valor AffectEnum que indica quantos registros o método UpdateBatch afetará.

PreserveStatus
Opcional. Um valor de booliano que especifica se as alterações locais, conforme indicado pela propriedade status, devem ser confirmadas. Se esse valor for definido como True, a propriedade status de cada registro permanecerá inalterada após a conclusão da atualização.

Observações

Use o método UpdateBatch ao modificar um objeto Recordset no modo de atualização em lote para transmitir todas as alterações feitas em um objeto Recordset para o banco de dados subjacente.

Se o Recordset objeto oferecer suporte à atualização em lote, você poderá armazenar em cache várias alterações em um ou mais registros localmente até chamar o método UpdateBatch. Se você estiver editando o registro atual ou adicionando um novo registro ao chamar o método UpdateBatch, o ADO chamará automaticamente o método Update para salvar as alterações pendentes no registro atual antes de transmitir as alterações em lote para o provedor. Você deve usar a atualização em lote apenas com um conjunto de chaves ou um cursor estático.

Nota

Especificar adAffectGroup como o valor desse parâmetro resultará em um erro quando não houver registros visíveis no Recordset atual (como um filtro para o qual nenhum registro corresponde).

Se a tentativa de transmitir alterações falhar para qualquer ou todos os registros devido a um conflito com os dados subjacentes (por exemplo, um registro já foi excluído por outro usuário), o provedor retornará avisos para o Erros coleção e ocorrerá um erro em tempo de execução. Use a propriedade Filter (adFilterAffectedRecords) e a propriedade status para localizar registros com conflitos.

Para cancelar todas as atualizações em lotes pendentes, use o método CancelBatch.

Se as propriedades dinâmicas Unique Table e Update Resync estiverem definidas, e o Recordset é o resultado da execução de uma operação JOIN em várias tabelas e, em seguida, a execução do método UpdateBatch é seguida implicitamente pelo método Resync, dependendo das configurações da propriedade Update Resync.

A ordem na qual as atualizações individuais de um lote são executadas na fonte de dados não é necessariamente a mesma que a ordem em que foram executadas no conjunto de registros local. A ordem de atualização depende do provedor. Leve isso em conta ao codificar atualizações relacionadas umas às outras, como restrições de chave estrangeira em uma inserção ou atualização.

Aplica-se a

do objeto Recordset (ADO)

Consulte Também

Exemplo dos métodos UpdateBatch e CancelBatch (VB)
Exemplo dos métodos UpdateBatch e CancelBatch (VC++)
método CancelBatch (ADO)
método Clear (ADO)
propriedade LockType (ADO)
método Update