Partilhar via


Método Delete (Conjunto de registros ADO)

Exclui o registro atual ou um grupo de registros.

Sintaxe

  
recordset.Delete AffectRecords  

Parâmetros

AffectRecords
Um valor AffectEnum que determina quantos registros o método Delete afetará. O valor padrão é adAffectCurrent.

Observação

adAffectAll e adAffectAllChapters não são argumentos válidos para Delete.

Comentários

O uso do método Delete marca o registro atual ou um grupo de registros em um objeto Recordset para exclusão. Se o objeto Recordset não permitir a exclusão de registro, ocorrerá um erro. Se você estiver no modo de atualização imediata, as exclusões ocorrerão no banco de dados imediatamente. Se um registro não puder ser excluído com sucesso (devido a violações de integridade do banco de dados, por exemplo), o registro permanecerá no modo de edição após a chamada a Update. Isso significa que você precisa cancelar a atualização com CancelUpdate antes de sair do registro atual (por exemplo, com Close, Move ou NextRecordset).

Se você estiver no modo de atualização em lote, os registros serão marcados para exclusão do cache e a exclusão real ocorrerá quando você chamar o método UpdateBatch. Use a propriedade Filter para ver os registros excluídos.

A recuperação dos valores de campo do registro excluído gera um erro. Após a exclusão do registro atual, o registro excluído permanece atual até que você passe para outro registro. Depois que você sair do registro excluído, ele não estará mais acessível.

Se você aninhar as exclusões em uma transação, poderá recuperar os registros excluídos com o método RollbackTrans. Se você estiver no modo de atualização em lote, poderá cancelar uma exclusão pendente ou um grupo de exclusões pendentes com o método CancelBatch.

Se a tentativa de excluir os registros falhar 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 a coleção Errors, mas não interromperá a execução do programa. Um erro em tempo de execução ocorre somente se há conflitos em todos os registros solicitados.

Se a propriedade dinâmica Unique Table estiver definida e o Recordset for o resultado da execução de uma operação JOIN em várias tabelas, o método Delete excluirá apenas as linhas da tabela nomeada na propriedade Unique Table.

Aplica-se A

Objeto Recordset (ADO)

Consulte Também

Exemplo do método Delete (VB)
Exemplo do método Delete (VBScript)
Exemplo do método Delete (VC++)
Método Delete (Coleção de campos ADO)
Método Delete (Coleção de parâmetros ADO)
Método DeleteRecord (ADO)