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

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

Для открытия другого экземпляра представления без загрузки данных

  • Откройте представление командой USE и включите в нее опции NOREQUERY или AGAIN.

Вы можете указать при использовании NOREQUERY номер сессии данных. Если вы опустите номер сессии данных, Visual FoxPro производит поиск во всех сессиях данных. Если для представления найден открытый набор результатов, Visual FoxPro повторно открывает курсор с тем же самым набором результатов. Если открытый набор результатов не найден, Visual FoxPro извлекает для представления новый набор результатов. Точно также, как и в случае таблиц, если представление не найдено, Visual FoxPro открывает для представления новый курсор.

Если вы желаете, чтобы Visual FoxPro искал открытый набор результатов только в текущей сессии данных, используйте опцию AGAIN. Открытие другого экземпляра представления с опцией AGAIN представляет собой эквивалент использования NOREQUERY с указанием номера текущей сессии данных.

Для получения более подробной информации смотрите описание команды USE.

Например, приведенные ниже строки кода открывает образцовую базу данных Northwind, используя команду OPEN DATABASE, создают удаленное представление с именем Product_View, используя команду CREATE SQL VIEW и выбирают все записи из таблицы Products. Команда USE открывает представление, а команда BROWSE отображает первый экземпляр представления в окне просмотра. Команда SELECT выбирает рабочую область представления, а команда USE открывает то же самое представление с опцией NOREQUERY. В это время, команда BROWSE отображает представление в окне просмотра без извлечения данных из источника данных:

 CopyCode imageСкопировать код
OPEN DATABASE HOME(2) + "Northwind\Northwind"
CREATE SQL VIEW Product_View AS SELECT * FROM Products
USE Product_View
BROWSE
SELECT 0
USE Product_View NOREQUERY
BROWSE

Приведенный ниже пример кода использует команду USE, для открытия представления, и команду BROWSE для отображения представления в окне просмотра. Вторая команда USE открывает представление в текущей сессии данных с опцией AGAIN, используя другое псевдоимя. Команда BROWSE отображает представление с другим псевдоименем:

 CopyCode imageСкопировать код
OPEN DATABASE HOME(2) + "Northwind\Northwind"
USE Product_View
BROWSE
USE Product_View AGAIN IN 0
BROWSE

Приведенная команда удаляет представление после того, как вы завершите работу с ним:

 CopyCode imageСкопировать код
DELETE VIEW Product_View

Для получения более подробной информации смотрите описания: Команда OPEN DATABASE, Команда CREATE SQL VIEW, Команда BROWSE, Команда SELECT и Команда DELETE VIEW.

Смотрите также