Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Команды изменения данных




ZAP

Команды удаления данных

Оператор do case

Лекция 7

Команды управления ходом выполнения программы:

 

If

Выполняет группу команд в зависимости от условия

 

IF lExpression [THEN]

Commands1

[ELSE

Commands2]

ENDIF

 

Параметры

 

lExpression - логическое выражение. Если lExpression истинно (.T.), любые команды следующие за IF или THEN и предшествующие ELSE или ENDIF выполняются.

 

· Если lExpression ложно (.F.) и ELSE присутствует, выполняются команды следующиее за ELSE и предшествующие ENDIF.

Выполняет первый набор команд для которого логическое выражение указанное в предложении CASE является истинным.

Синтаксис

DO CASE

CASE lExpression1

Commands

[CASE lExpression2

Commands

...

CASE lExpressionN

Commands]

[OTHERWISE

Commands]

ENDCASE

 

Аргументы

 

CASE lExpression1 Commands...Когда обнаруживается первое истинное (.T.) CASE-выпражение, выполняется следующий за ним набор команд. Команды выполняются до следующего оператора CASE или ENDCASE.

 

Исполняется только один набор команд, даже если в других CASE – логическое выражение будет истинным.

OTHERWISE Commands Если все из CASE выражений примут значение ложно (.F.), то будут выполнены команды указанные после OTHERWISE.

 

Пример

DO CASE... ENDCASE

STORE CMONTH(DATE()) TO month && Название месяца для текущей даты

 

DO CASE && Begins loop

 

CASE INLIST(month,'January','February','March')

STORE 'Отчет за первый квартал' TO rpt_title

 

CASE INLIST(month,'April','May','June')

STORE ' Отчет за второй квартал ' TO rpt_title

 

CASE INLIST(month,'July','August','September')

STORE ' Отчет за третий квартал ' TO rpt_title

 

OTHERWISE

STORE ' Отчет за четвертый квартал ' TO rpt_title

 

ENDCASE && Ends loop

WAIT WINDOW rpt_title NOWAIT

 

ERASE (DELETE FILE)

Удаляет файл(файлы) с диска

 

Синтаксис

 

ERASE FileName |? [RECYCLE]

 

 

FileName Указывает файл который будет удален. Необходимо указание полного пути к файлу если он расположен не в текущем каталоге.

 

FileName – может содержать символы обобщения такие как * и?.

Если в качестве имени файла указать ‘?’ будет выведен диалог для выбора удаляемого файла.

 

RECYCLE Удаляемый файл помещается в Windows 95 Recycle Bin (может быть восстановлен).

 

Удаляет все записи из таблицы, оставляет только ее структуру.

 

Синтаксис

 

ZAP [IN nWorkArea | cTableAlias]

 

IN nWorkArea указывает номер рабочей области.

 

IN cTableAlias указывает алиас таблицы.

 

Если не указаны nWorkArea или cTableAlias, удаляются все записи из таблицы в текущей рабочей области.

 

После выполнения ZAP записи не могут быть восстановлены.

 

DELETE

Помечает записи как удаленные.

 

Синтаксис

 

DELETE

[Scope] [FOR lExpression1] [WHILE lExpression2]

[IN nWorkArea | cTableAlias]

[NOOPTIMIZE]

 

 

Scope Указывает диапазон записей помечаемых к удалению. Могут использоваться: ALL, NEXT N, RECORD N, и REST.

 

 

Если аргументы не указаны –помечается текущая запись.

 

 

PACK

Физически удаляет из таблицы все записи помеченные к удалению.

 

Синтаксис

 

PACK [MEMO] [DBF]

Выполнение команды PACK требует монопольного доступа к таблице.

Если у таблицы имеются открытые индексы – при выполнении команды они будут перестроены.

 

RECALL

Снимает пометку удаления с записей помеченных к удалению в текущей таблице.

 

Синтаксис

 

RECALL

[Scope] [FOR lExpression1] [WHILE lExpression2]

[NOOPTIMIZE]

 

Аргументы

 

Scope Указывает диапазон восстанавливаемых записей. Могут использоваться: ALL, NEXT N, RECORD N, и REST.

 

Если аргументы не указаны –снимается пометка с текущая запись.

RECALL – может восстановить записи в таблице если для нее не выполнялись команды ZAP или PACK

 

REPLACE

Изменяет значения в полях таблицы.

Синтаксис

 

REPLACE FieldName1 WITH eExpression1 [ADDITIVE]

[, FieldName2 WITH eExpression2 [ADDITIVE]]...

[Scope] [FOR lExpression1] [WHILE lExpression2]

[IN nWorkArea | cTableAlias]

[NOOPTIMIZE]

 

Аргументы

 

FieldName1 WITH eExpression1 [, FieldName2 WITH eExpression2... ] Указывает что данные в FieldName1 заменяются значением Expression1; данные в FieldName2 заменяются значением eExpression2; и т.д.

 

В случае если значение выражения превышает разрядность числового(numeric) поля, REPLACE выполняет следующие шаги:

 

1. REPLACE округляет значение выражения до количества десятичных знаков в поле таблицы.

2. Если значение не размещается, REPLACE сохраняет значение используя представление вида мммЕ пп.

3. Если значение не размещается, REPLACE заменяет содержимое поля звездочками.

 

Scope Указывает диапазон изменяемых записей. Могут использоваться: ALL, NEXT N, RECORD N, и REST.

 

По умолчанию REPLACE изменяет текущую запись (NEXT 1).

 

IN nWorkArea Указывает номер рабочей области в которой будут модифицированы записи.

IN cTableAlias Указывает алиас таблицы в которой будут модифицированы записи.

Если nWorkArea и cTableAlias не указаны, обновляются записи в текущей рабочей области.

 




Поделиться с друзьями:


Дата добавления: 2015-06-25; Просмотров: 376; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.017 сек.