Новости



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

Команда LOCATE

См. также Пример

Последовательно просматривает таблицу в поисках первой записи, совпадающей с заданным логическим выражением.

Синтаксис

LOCATE FOR lExpression1
[Scope]
[WHILE ]
[NOOPTIMIZE]

Параметры

FOR lExpression1

Команда LOCATE последовательно просматривает текущую таблицу в поисках первой записи, соответствующей логическому выражению lExpression1.

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

Scope

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

По умолчанию команда LOCATE использует диапазон ALL fox90001.gif все записи.

WHILE lExpression2

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

NOOPTIMIZE

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

Комментарии

Данная таблица не обязательно должна быть индексирована.

Если команда LOCATE находит запись, удовлетворяющую условиям поиска, с помощью функции RECNO( ) можно получить номер этой записи. Если нужная запись найдена, функция FOUND( ) возвращает значение "истина" (.T.), а EOF( ) fox90001.gif "ложь" (.F.). Если действует установка SET TALK ON, на экране появляется номе найденной записи.

После того как LOCATE найдет подходящую запись, можно выдать команду CONTINUE, чтобы продолжить поиск в оставшейся части таблицы. По команде CONTINUE процесс поиска возобновляется с записи, непосредственно следующей за только что найден ой. Команды CONTINUE можно выдавать повторно, пока не будет достигнута граница диапазона или конец таблицы.

Если записи, соответствующей требуемому условию, не найдено, RECNO( ) возв ащает число записей в таблице, увеличенное на 1, FOUND( ) возвращает "ложь" (.F.), а EOF( ) fox90001.gif "истину" (.T.).

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



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

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

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

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

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