Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

БД / Базы данных / Лабораторные работы / Лабораторная №10(Запросы с параметрами)

.doc
Скачиваний:
61
Добавлен:
30.05.2015
Размер:
367 Кб
Скачать

Лабораторная работа № 10.

Тема: Запросы в Access (продолжение).

ЗАПРОСЫ С ПАРАМЕТРАМИ.

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

Определение параметра для значения поля.

Имя параметра запроса может задаваться непосредственно в поле Условие отбора в квадратных скобках. При выполнении запроса это имя появится в диалоговом окне Введите значение параметра.

В запросе “Найдите заказы, которые исполнялись больше 10 дней” вместо условия > 10 введите параметр условие: > [Задайте количество дней]

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

Задание.

  1. Создайте запрос с параметром для выбора продуктов с заданием параметром значения белков, жиров и углеводов (используйте операцию >)

  2. Создайте запрос по таблице ПродуктыЗаказа, где процент скидок задается параметром.

Указание! Поле Скидка задана в процентном формате

  1. Создайте запрос на основе таблицы Продукты и ТипыПродуктов, в котором отбирались бы продуктов определенного типа (тип должен быть параметром запроса)

Многотабличные запросы на выборку.

Отличаются от однотабличных тем, что для отбора данных задается несколько взаимосвязанных таблиц.

Задание.

  1. Создайте запрос, в котором бы отбиралась вся информация о Заказах и Магазинах, сделавших заказы.

В результате вы должны увидеть следующую таблицу:

Обратите внимание, что записей в результате выполнения запроса у нас будет 13 (столько, сколько их было в таблице Заказы, именно эти записи дополнились полной информацией о магазинах, хотя общее количество магазинов у нас 42).

  1. Измените этот запрос, так чтобы в него вошла информация обо всех Магазинах и Заказах, для тех магазинов, которые сделали заказы.

Указание. Для выполнения этого запроса необходимо вспомнить, что есть три типа соединения таблиц!

В задании 1 вы должны соединить таблицы первым способом (по равенству значений соответствующих полей), а во втором выбрать другой тип соединения:

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

В этом запросе уже будет 44 записи! Информация о заказах для магазинов, которые не заказали продуктов будет отсутствовать (пустые значения).

  1. На основании предыдущего запроса найдите магазины, которые не сделали заказов. Указание. В условие отбора для поля КодЗаказа введите условие is NULL и получите список магазинов, которые ничего не заказали. Можно послать им уведомление!

ЕЩЕ МНОГОТАБЛИЧНЫЕ ЗАПРОСЫ:

  1. Найти, какие продукты заказывались в магазинами Кировского района.

  2. Найти директоров магазинов, которые заказывали Мюсли