Определяет, как система Visual FoxPro обрабатывает записи таблицы, помеченные на удаление; и как эти записи доступны в различных командах обработки.
SET DELETED ON | OFF |
Параметры
- ON
-
Определяет, что команды не обрабатывают записи, помеченные на удаление, включая записи в связанных (дочерних) таблицах; задаваемые диапазоны записей (Scope Records) также не включают эти записи в свои списки.
- OFF
-
(По-умолчанию) Определяет, что записи, помеченные на удаление обрабатываются как обычные записи, включая записи в связанных (дочерних) таблицах; диапазоны записей также включают их в списки, как и обычные записи.
Примечание
При выполнении команды SQL SELECT, при установке SET DELETED OFF, в результат выполнения Запроса записи, помеченные для удаления в исходной таблице, включаются как обычные записи, однако они уже не имеют отметки "удаленные" в результирующей таблице Запроса.
Комментарии
Выполняемые Запросы, использующие для тестирования статуса "удаления" записей функцию DELETED( ), могут быть оптимизированы по технологии Rushmore Query Optimization , для этого должен быть в наличии активный индекс по функции DELETED( ) исходной таблицы.
Об Оптимизации выполнения Запросов см. раздел Использование технологии Rushmore для ускорения доступа к данным .
Для установки Флага удаления можно использовать команды DELETE – SQL или DELETE, или опцию Delete Records... из меню Table, когда таблица открыта в системных окнах Browse или Edit.
Для снятия Флага удаления можно использовать команду RECALL, или выбрать опцию Recall Records... из меню Table, когда таблица открыта в системных окнах Browse или Edit.
![]() |
---|
Установка SET DELETED игнорируется для диапазона = текущая запись, или для диапазона = одна запись. Исключение составляет команда SEEK, в этом случае, установка команды SET DELETED - всегда учитывается. Команды INDEX и REINDEX - всегда игнорируют умтановку команды SET DELETED, и индексируют все записи данной таблицы. |
SET DELETED действует в рамках текущей сессии данных.