
- •Лабораторная работа №9-10 формирование запросов в системе управления базой данных
- •1 Понятие запроса к базе данных
- •2 Создание запроса с помощью мастера
- •3 Создание запроса с помощью Конструктора
- •4. Вычисляемые поля в запросах. Построитель выражений
- •5. Технология создания запросов
- •6. Параметрические запросы
- •7. Перекрестные запросы
- •8. Обработка запросов
- •Задания.
6. Параметрические запросы
Некоторые запросы используются периодически без изменения критериев, другие запросы получаются путем незначительных видоизменений основных запросов.
В параметрическом запросе указывается критерий, который может изменяться по заказу пользователя. Такой запрос выгодно применять как основу для форм и отчетов. Например, в отчете появляется приглашение ввести месяц, за который он составлен. Условие отбора записей задается непосредственно при вызове запроса. При этом для внесения изменений не требуется открывать запрос в окне Конструктора (строка «Условие отбора»).
Последовательность создания параметрического запроса:
1) создать запрос в режиме Конструктора;
2) в Бланке запроса (нижняя часть окна Конструктора) в строке «Условие отбора» вводится условие отбора в виде приглашения в квадратных скобках, например [Введите код товара];
3) закрыть окно «Запрос на выборку» и на запрос, сохранить ли изменения, ответить «Да»; вернуться в окно базы данных, где представлен созданный запрос (выделенный);
4) нажать кнопку «Открыть»; откроется окно диалога «Введите значение параметра» с текстом-приглашением, например «Введите код товара»;
5) ввести значение параметра отбора и нажать кнопку «ОК». На экране «Запрос на выборку» выводится запрос с записями, которые отобраны по определенным параметрам. Если параметр введен неправильно или нет записей с заданным значением, то на экране выводится запрос только с названиями полей без их значений или сообщение об ошибке.
Другой вариант создания параметрического запроса:
1) в окне Конструктора на свободное место щелкнуть правой кнопкой мыши и в контекстном меню выбрать команду «Параметры»; открывается окно «Параметр запроса» с двумя графами — «Параметр» и «Тип данных»;
2) в первой строке графы «Параметр» вводится текст-приглашение, например «Введите код», а в графе «Тип данных» щелкнуть мышью; появится открывающая кнопка списка типа данных;
3) после выбора типа данных нажать клавишу «ОК».
7. Перекрестные запросы
В перекрестном запросе отражаются результаты расчетов (средние величины, суммы и т. д.) по значению одного поля таблицы. Результаты вычислений группируются по двум наборам данных: один находится в левом столбце таблицы, другой — в верхней строке. Перекрестный запрос представляет информацию в более компактном виде, чем обычные запросы.
Данные сгруппированы как по горизонтали, так и по вертикали и размещены компактно в виде двумерной таблицы, — сравните данные, представленные в табл. 7.3, и те же данные, отраженные в перекрестном запросе.
Т а б л и ц а 7 .3
Фермер |
Продукция |
Валовой сбор |
Астрожский |
Рожь |
100 |
Астрожский |
Овес |
50 |
Астрожский |
Рис |
300 |
Калиновский |
Рожь |
200 |
Калиновский |
Овес |
100 |
Калиновский |
Рис |
500 |
Те же данные, отраженные в перекрестном запросе:
Фермер |
Рожь |
Овес |
Рис |
Астрожский |
100 |
50 |
300 |
Калиновский |
200 |
100 |
500 |
Для названия заголовков колонок можно использовать значения нескольких полей или выражений, например «Всего».
Access имеет Мастер по созданию перекрестного запроса.
Последовательность действий при создании перекрестного запроса с помощью Мастера:
1) открыть окно базы данных;
2) выбрать вкладку «Запросы»;
3) нажать кнопку «Создать», откроется окно диалога «Новый запрос»;
4) выбрать Мастер «Перекрестный запрос» и нажать кнопку «ОК»; откроется окно «Создание перекрестных таблиц»;
5) выбрать из списка таблицу-источник и дальше выполнять инструкции в диалоговых окнах Мастера.
Последовательность действий при создании перекрестного запроса без Мастера:
1) в окне базы данных выбрать вкладку «Запросы» и нажать кнопку «Создать»; в открывшемся окне «Новый запрос» выбрать «Режим Конструктора» и нажать кнопку «ОК».
2) в открывшемся окне «Добавление таблицы» выбрать вкладку, где находятся объекты с информацией для формирования запроса; выбрать источник для участия в запросе;
3) нажать кнопку «Закрыть» на панели инструментов; в Бланке запроса в строке «Поле» добавить поле и условие отбора;
4) на панели инструментов нажать кнопку «Тип запроса» и выбрать опцию «Перекрестный»;
5) для полей, значения которых будут заголовками строк, выбрать ячейку в строке «Перекрестная таблица», выбрать «Заголовки строк» и оставить в строке «Групповая операция» значение «Группировка» для полей, значения которых будут представлены в запросе в качестве заголовков столбцов. Выбрать ячейку в строке «Перекрестная таблица» и выбрать «Заголовки строк». Значение «Заголовки столбцов» можно выбрать только для одного поля и оставить — «Группировка».
Замечание. По умолчанию заголовки столбцов сортируются по алфавиту или числовому значению.