Новости



Visual FoxPro 9 позволяет создавать ещё более производительные приложения баз данных.
Двадцатиление FoxPro! Microsoft принимает поздравления.
Visual FoxPro Toolkit for .NET - более 225 функций VFP 7.0, для языков .NET (подробнее)

Команда 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 должны быть заменены значением выражения eExpression1, данные в поле FieldName2 fox90001.gif значением выражения eExpression2 и т.д.

Если значение выражения не вмещается по ширине в числовое поле, команда REPLACE вписывает выражение в поле путем дополнительной обработки:

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

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

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

ADDITIVE

Присоединяет в конец memo-поля значение замещающего выражения для этого поля. Опция ADDITIVE применяется только к memo-полям. Если опустить ключевое слово ADDITIVE, значение выражения затрет содержимое memo-поля.

Scope

Задает диапазон заменяемых записей. Будут заменены только записи, попадающие в указанный диапазон. Он задается следующими предложениями: ALL, NEXT nRecords, RECORD nRecordNumber и REST. Подробнее о предложениях диапазона см. тему Scope Предложения диапазона или главу 2 "Обзор языка программирования" Руководства разработчика.

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

FOR lExpression1

Указывает, что заданные поля могут быть замещены только в тех записях, для которых выражение lExpression1 имеет значение "истина" (.T.). Предложение FOR позволяет производить условную замену записей, отфильтровывая те из них, которые не нужно менять.

Технология Rushmore оптимизирует операцию REPLACE FOR, если lExpression1 является оптимизируемым выражением. В целях повышения производительности испо ьзуйте в предложении FOR оптимизируемое выражение. Подробнее об этом см. темы SET OPTIMIZE и Основы технологии Rushmore или главу 17 "Оптимизация приложений" Руководства разработчика.

WHILE lExpression2

Задает условие, в соответствии с которым поля будут заменяться, пока значением логического выражения lExpression2 остается "истина" (.T.).

[IN nWorkArea]

Указывает рабочую область таблицы в которой обновляются записи.

[IN cTableAlias]

Указывает алиас таблицы в которой обновляются записи.

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

NOOPTIMIZE

Запрещает оптимизацию по технологии Rushmore. Подробнее об этом см. описание команды SET OPTIMIZE и Основы технологии Rushmore или главу 17 "Оптимизация приложений" Руководства разработчика.

Комментарии

Команда REPLACE замещает данные в поле значением выражения. Если рабочая об асть не выбрана, то имена полей для такой таблицы должны предваряться псевдонимом таблицы.

Замечание Если указатель записи установлен в конце файла в текущей рабочей области, а вы задаете поле в другой рабочей области, никакие замены не производятся.



Новое на сайте

  • Обновлен портфель программиста

    Добавлены: Установка HTML Help (Создание справочной системы), Imagedit.zip - Графический редактор ( ico и bmp), Библиотека локализации HTML Help (Русский)
  • Новые примеры программ

    Установка библиотек, Игровая программа "Охота на лис", Установка библиотек "Охота на лис", plastic -"Платежки", Библиотеки (на FPD26), platan -"Платежки" (на Clipper 5.2)
  • Обновленна справка

    Подсказки, технология программирования и использование Visual FoxPro. Команды, функции, операторы, объекты, свойства, события и методы.