Очищает указанные (или все) поля текущей Записи Таблицы, если не указаны дополнительные параметры.
BLANK [FIELDS FieldList] [DEFAULT [AUTOINC]] [Scope] [FOR lExpression1] |
Параметры
- [FIELDS FieldList]
-
Очищает только те поля таблицы, которые определены в списке FieldList. Если данная секция FIELDS cотсутствует, предполагаются все поля рассматриываемой Таблицы. Если указывается имя поля, относящееся к другой, не текущей таблице, оно должно быть указано вместе с соответствующим алиасом (в целях однозначного соответствия и возможных ошибок).
Примечание
Команда BLANK не очищает соответствующие поля записей таблицы, связанной с текущей таблицей, если указатель записей расположен вне-данных (EOF()=.t.). Если Указатель записи текущей таблицы установлен в актуальное состояние, а в дочерней таблице существуют соответствующие записи, тогда команда BLANK может очистить данные в указанных полях дочерней записи.
- [DEFAULT [AUTOINC]]
-
Определяет создание начальных значений для всех очищаемых полей, для которых в Базе Данных созданы соответствующие значения (значения по-умолчанию). Если список полей не указан, то всем полям будут присвоены начальные значения. Секция DEFAULT игнорируется для Свободных таблиц (не закрепленных за базой данных).
Ключевое слово AUTOINC определяет задание начального значения для соответствующих полей таблицы, которые имеют соответствующую характеристику. Если опция AUTOINC отсутствует, то присваивается начальные значения соответствующим полям.
Примечание
Для автоматического изменения автоинкрементных полей требуется временная блокировка Заголовка Таблицы. Если вы выполняете команду BLANK, с опциями DEFAULT AUTOINC, таблица открыта в режиме коллективного доступа, системная команда SET MULTILOCKS находится в состоянии =
OFF
, Visual FoxPro генерирует сообщение об Ошибке. Блокировка Записи невозможна.
- Scope
-
Определяет диапазон обрабатываемых Записей Таблицы, поля которых будут очищены. По-умолчанию, команда BLANK очищает текущую запись таблицы, предполагается опция (NEXT 1). Очищаются только те записи, которые входят в указанный диапазон.
Ключевыми опциями Диапазона являются: ALL, NEXT nRecords, RECORD nRecordNumber, и REST.
Рассматриваемые опции Диапазона работают только с текущей Рабочей Областью.
Дополнительную информацию смотрите в разделе: Опции Диапазона.
- FOR lExpression1
-
Определяет логическое условие, если значение заданного выражения lExpression1 = True (.T.), то поля соответствующих Записей Очищаются. Если указанное логическое условие BLANK FOR lExpression1 оптимизируемо, то может быть применена технология "Rushmore Query Optimization". О возможностях данной технологии смотрите в разделе: Использование Технологии Rushmore оптимизации Запросов для ускорения доступа к данным.
- WHILE lExpression2
-
Определяет логическое условие очистки полей соответствующих Записей Таблицы, пока данное условие lExpression2 = True (.T.) - записи очищаются.
- NOOPTIMIZE
-
Отключает оптимизацию Rushmore при выполнении команды BLANK. Смотрите дополнительно разделы: SET OPTIMIZE, команда и Использование Технологии Rushmore оптимизации запросов для ускорения доступа к данным.
- IN nWorkArea| cTableAlias
-
Определяет номер рабочей области или алиас соответствующей таблицы, поля записей которой будут очищаться при помощи команды BLANK. Данная опция используется для указания ссылки на таблицу, открытую не в текущей рабочей области.
Примечание редактора. Если команда выдается с опцией DEFAULT, то опция DEFAULT должна быть помещена после опции IN nWorkArea| cTableAlias. В противном случае Visual FoxPro сгенерирует ошибку 36 - Command contains unrecognized phrase/keyword (Команда содержит нераспознаваемую фразу/ключевое слово).
Комментарии
Для проверки того факта, очищено ли поле таблицы, используйте функцию: ISBLANK( ).
Для добавления новой Записи в конец Таблицы - используйте команду APPEND BLANK.
Пример
В рассматриваемом далее примере: открывается таблица с именем customer,
которая закреплена за Базой Данных testdata
. Отображается содержание полей первой Записи таболицы. Команда SCATTER используется для получения копии данных в массиве переменных памяти. Текущая запись очищается при промощи команды BLANK, вновь отображается содержание полей записи. Команда GATHER используется для восстановления сохраненных ранее данных в Записи, и восстановленные данные отображаются опять.
![]() | |
---|---|
CLOSE DATABASES |