Иллюстрированный самоучитель по Visual FoxPro 8

Просмотр результатов запроса в режиме Browse. Сохранение результатов запроса в курсоре.

По умолчанию Visual FoxPro помещает результаты запроса во временную таблицу и выводит ее на экран в режиме Browse (Обзор) (рис. 18.2). После закрытия окна временная таблица удаляется из памяти. Этот режим удобен в том случае, если вы хотите просто просмотреть результаты запроса.

Иллюстрированный самоучитель по Visual FoxPro 8 › Расширенные средства выборки данных › Просмотр результатов запроса в режиме Browse. Сохранение результатов запроса в курсоре.
Рис. 18.2. Просмотр запроса в режиме Browse

Сохранение результатов запроса в курсоре

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

Для направления результатов запроса в курсор в диалоговом окне Query Destination (Результаты запроса) установите опцию Cursor (Курсор) (рис. 18.3), в поле Cursor name (Имя курсора) введите имя курсора и нажмите кнопку ОК. Введенное имя будет служить псевдонимом для ссылки на результаты запроса. В окне расположены флажки следующего назначения:

  • READWRITE – указывает, что курсор является временным и модифицируемым. Для таблиц, содержащих автоинкрементные поля, эти свойства в курсоре не наследуются;
  • NOFILTER – указывает, что создается курсор, который может использоваться в последующих запросах.

Иллюстрированный самоучитель по Visual FoxPro 8 › Расширенные средства выборки данных › Просмотр результатов запроса в режиме Browse. Сохранение результатов запроса в курсоре.
Рис. 18.3. Диалоговое окно Query Destination с установленной опцией Cursor

Совет
Для повышения быстродействия и избежания проблем, связанных с именами файлов при работе в сети, небольшие курсоры желательно держать в памяти или на локальном диске. При увеличении размера курсоров и отсутствии достаточного количества места Visual FoxPro записывает их на физический носитель
.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.