Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
metod_bd.docx
Скачиваний:
17
Добавлен:
26.03.2015
Размер:
606.72 Кб
Скачать

4. 2. Создание запроса в режиме Конструктор

Для создания запроса в режиме Конструктор после выбора таблиц для запроса в окне Добавление таблицы щелчком мыши по кнопке Добавить (см. рис. 15) на экране появляется диалоговое окно Запрос на выборку, состоящее из двух частей (см. рис. 16): верхней, где представлены таблицы, на основе которых строится запрос, и нижней, где выбираются поля из таблиц и где, собственно говоря, непосредственно формируется запрос.

Рис. 15. Окно выбора таблиц из БД для запроса

Рис. 16. Окно организации запроса в режиме Конструктор

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

Нижняя часть диалогового окна Запрос на выборку называется бланком запроса по образцу, иначе QBE-бланком или QBE-областью. При этом количество строк в QBE-бланке может меняться в зависимости от вида запроса. На рис. 16 представлен бланк запроса по образцу QBE, содержащий строки:

  • Поле – для запрашиваемых полей;

  • Имя таблицы – для вывода имени таблицы, из которой выбирается поле;

  • Сортировка – для проведения сортировки по этим полям;

  • Вывод на экран – для вывода или нет выбранных запросом полей на экран;

  • Условие отбора – для ввода условий на выбор записей в соответствии с заданными условиями, причем условия по отдельным полям в этой строке соединяются операцией «и» (все условие верно только, если все составляющие его условия верны);

  • Или – для ввода условий, которые соединяются с условием в вышерасположенной строке Условие отбора по принципу «или» (все условие верно, если хотя бы одно из составляющих его условий верно).

Для создания простого запроса на просмотр таблицы с проведением сортировки ее записей добавьте в диалоговое окно Запрос на выборку таблицу «Товары». Перенесите затем мышью в QBE-область последовательно поля: «Товар», «Количество», «Стоимость», «Описание», «Изображение», «Дата поступления». С помощью раскрывающегося спи­ска в строке QBE-бланка Сортировка для поля "Товар" установите режим сор­тировки По возрастанию, а для поля «Стоимость» – По убыванию (см. рис. 16).

В построенном варианте запроса записи будут отсортированы в алфавитном порядке по названию товаров, а в пределах каждого товара – в убывающем порядке его стоимости.

Для подавления вывода на экран отдельных полей запроса необходимо в строке QBE-бланка Вывод на экран с помощью мыши произвести сброс флажка (отметка внутри квадрата пропадет). Поскольку данные с типами Поле MEMO и Поле объекта OLE не отображаются в таблицах запросов, то нашем случае вывод этих полей всегда будет подавлен (просмотреть такие поля можно только построив на основе полученного запроса новый объект БД Форма, см. подробнее раздел 5 пособия).

При построении запросов следует также иметь в виду, что Access не проводит сорти­ровку по полям с типами данных Поле MEMO и Поле объекта OLE.

Для выполнения запроса щелкните мышью кнопку Запуск в пиктографическом меню. В результате на экране в виде таблицы отобразится результат запроса. Сохраните запрос под именем «Товары с сортировкой».

Рис. 17. Бланк запроса на выборку с условием и сортировкой

Рис. 18. Окно Построитель выражений

Составим теперь список контрактов, заключенных с клиентами после 1 марта 2001 года. Для подготовки такого запроса с условием для выборки записей, действуя аналогичным предыдущему случаю образом, выберите в главном окне БД объект Запросы и вы­полните затем последовательно команды Создать/Конструктор. В окно Запрос на выборку добавьте таблицу «Контракты», перенесите мышью из списка полей выбранной таблицы в область спецификации запроса поля таблицы «Товар», «Количество» и «Дата» в нужной последовательности.

В поле запроса «Товар» задайте режим сортировки. В поле запроса «Дата» в строке Условие отбора задайте отбор по критерию (см. рис. 17).

>1.03.01

Выполните запрос щелчком мыши по кнопке Запуск на панели пиктографического меню. Сохраните запрос под именем «Контракты после 1 марта». Сохраненным запросом можно воспользоваться в любой момент и по­сле внесения изменений и дополнений в исходную таблицу.

В качестве примера отбора данных по более сложному условию рассмотрим запрос на полу­чение сведений о контрактах, заключенных клиентами за определенный промежуток времени, например с 15.03.01 по 23.05.01.

Постройте такой запрос на базе таблицы «Контракты». Включите в запрос поля «Дата», «Товар», «Клиент». Для поля «Дата» задайте режим сортировки По воз­растанию и условие отбора:

Between 15.05.01 And 23.05.01

Для создания сложных условий выборки, определяемых сложными выражениями, куда могли бы входить поля существующих в БД таблиц и других объектов, встроенные в Access функции, операторы, константы и т.п., рекомендуется использовать окно Мастера Построитель выражений, которое открывается при нажатии на соответствующую кнопку Построить пиктографического меню главного окна БД (см. рис. 18).

Установите курсор мыши в поле «Дата» строки Условие отбора QBE-бланка запроса, вызовите Построитель выражений и наберите в верхней части его окна требуемое условие, используя имеющиеся кнопки на панели для набора математических операций. Выполните запрос и сохраните его под именем «Контракты за период».

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]