Delete Method

Deletes the current record in an open Recordset object or an object from a collection.

Syntax

For a Recordset object:

recordset.Delete AffectRecords

The Delete method syntax for Recordset objects has these parts:

Part

Description

recordset

An object variable representing an open Recordset object.

AffectRecords

Optional. A Long expression that determines how many records the Delete method should act on. Can be one of the following constants:

adAffectCurrent, 1 (Default) - Delete only the current record.

adAffectGroup, 2 - Delete the records that satisfy the current Filter property setting. You must set the Filter property to one of the valid predefined constants in order to use this option.

For a collection:

collection.Delete Index

The collection placeholder represents the collection from which you want to delete an object. The Index placeholder is a String representing the name of the object you wish to delete.

Remarks

Use the Delete method with a Recordset object to remove the current record or a group of records, or with a collection to remove one of its objects.

Recordset

Using the Delete method marks the current record or a group of records in a Recordset object for deletion. If the Recordset object doesn't allow record deletion, an error occurs. If you are in immediate update mode, deletions occur in the database immediately. Otherwise, the records are marked for deletion from the cache and the actual deletion happens when you call the UpdateBatch method. (Use the Filter property to view the deleted records.)

Retrieving field values from the deleted record generates an error. After deleting the current record, the deleted record remains current until you move to a different record. Once you move away from the deleted record, it is no longer accessible.

If you nest deletions in a transaction, you can recover deleted records with the RollbackTrans method. If you are in batch update mode, you can cancel a pending deletion or group of pending deletions with the CancelBatch method.

If the attempt to delete records fails because of a conflict with the underlying data (for example, a record has already been deleted by another user), the provider returns warnings to the Errors collection but does not halt program execution. A run-time error occurs only if there are conflicts on all the requested records. Use the Filter property (adFilterAffectedRecords) and the Status property to locate records with conflicts.

Collection

Using the Delete method on a collection lets you remove one of the objects in the collection. This method is available only on the Parameters collection of a Command object. You must use the Parameter object's Name property when calling the Delete method - an object variable is not a valid argument.