Метод Delete (набор записей ADO)
Удаляет текущую запись или группу записей.
Синтаксис
recordset.Delete AffectRecords
Параметры
AffectRecords
Значение AffectEnum, определяющее количество записей метод delete. Значение по умолчанию — adAffectCurrent.
Заметка
adAffectAll и adAffectAllChapters недопустимые аргументы для Delete.
Замечания
Использование метода delete помечает текущую запись или группу записей в объекте набора записей для удаления. Если объект набора записей не разрешает удаление записей, возникает ошибка. Если вы находитесь в режиме немедленного обновления, удаление происходит в базе данных немедленно. Если запись не может быть успешно удалена (например, из-за нарушений целостности базы данных), запись останется в режиме редактирования после вызова Update. Это означает, что необходимо отменить обновление с помощью CancelUpdate перед переходом от текущей записи (например, с Закрыть, Переместитьили NextRecordset).
Если вы находитесь в режиме пакетного обновления, записи помечены для удаления из кэша и фактическое удаление происходит при вызове метода UpdateBatch. Используйте свойство Filter для просмотра удаленных записей.
Получение значений полей из удаленной записи приводит к ошибке. После удаления текущей записи удаленная запись остается текущей, пока не перейдете к другой записи. После перехода от удаленной записи он больше недоступен.
При вложенных удалениях в транзакции можно восстановить удаленные записи с помощью метода RollbackTrans. Если вы находитесь в режиме пакетного обновления, можно отменить ожидающее удаление или группу ожидающих удалений с помощью метода CancelBatch.
Если попытка удалить записи завершается ошибкой из-за конфликта с базовыми данными (например, запись уже удалена другим пользователем), поставщик возвращает предупреждения в коллекцию ошибки, но не останавливает выполнение программы. Ошибка во время выполнения возникает только в случае конфликтов во всех запрошенных записях.
Если задано динамическое свойство Unique Table, а Recordset является результатом выполнения операции JOIN в нескольких таблицах, то метод Delete будет удалять только строки из таблицы с именем в свойстве Unique Table.
Применимо к
См. также
Пример метода delete (VB)
Пример метода delete (VBScript)
Пример метода delete (VC++)
метода удаления (коллекция полей ADO)
Метод удаления (коллекция параметров ADO)
Метод DeleteRecord (ADO)