Снимает Отметку "удаления" записи в выбранной таблице; (восстанавливает запись).
RECALL [Scope] [FOR lExpression1] [WHILE lExpression2] [NOOPTIMIZE] |
Параметры
- Scope
-
Определяет диапазан записей для восстановления. По-умолчанию, восстанавливается текущая запись (NEXT 1).
В этом случае, только те записи, которые удовлетворяют указанному диапазону, - восстанавливаются. Допустимые значения для данной опции: ALL, NEXT nRecords, RECORD nRecordNumber, и REST.
См. дополнительно раздел Опция Scope (область действия, регион).
- FOR lExpression1
-
Определяет, что только те записи восстанавливаются, для которых выражение lExpression1 = true (.T.). Данная опция позволит вам отсеить (отфильтровать) нежелательные записи.
Технология Rushmore Query Optimization применима для выполнения команды RECALL FOR lExpression1, если данное логическое выражение оптимизируемо. Для повышения производительности при выполнении данных команд, нужно использовать оптимизируемые условные выражения в конструкции FOR.
См. дополнительно разделы SET OPTIMIZE, команда и Использование технологии Rushmore Query Optimization для ускорения доступа к Данным.
- WHILE lExpression2
-
Определяет логическое условие, определяющее, что записи восстанавливаются до тех пор, пока lExpression2 = true (.T.).
- NOOPTIMIZE
-
Блокирует технологию оптимизации Rushmore при выполнении команды RECALL
См. дополнительно разделы SET OPTIMIZE, команда и Использование технологии Rushmore Query Optimization для ускорения доступа к Данным.
- IN nWorkArea | cTableAlias
-
Определяет номер рабочей области или алиас таблицы, для которой выполняется текущая команда RECALL. Данная опция используется для таблиц, открытых в других рабочих областях, не в текущей.
Комментарии
Команда RECALL используется для Восстановления (снятия отметки "удаления") тех записей, которые еще не удалены "физически" с использованием команд PACK или ZAP.
![]() |
---|
Как только файл таблицы упакован (pack), все записи, отмеченные на удаление, исчезают навсегда. |
Для удаления записей (установки флага "удаления") можно использовать команды DELETE или DELETE – SQL, а также использовать опцию Delete Records из меню Table , когда таблица открыта в системном окне Browse или Edit . Восстановление записей (снятие отметки "удалена") осуществляется командой RECALL, или соответствующим пунктом Recall Records из меню Record, когда активны системные окна Browse или Edit.
Если отсутствует опция IN, команда RECALL работает с текущей рабочей областью.
Пример
В представленном примере: открывается таблица customer
, находящаяся в базе данных testdata
. С помощью команды DELETE – SQL - удаляются все записи, для которых значение поля country
= "USA". Данные записи отображаются на экране; за тем - все записи восстанавливаются командой RECALL ALL.
![]() | |
---|---|
CLOSE DATABASES |