
Московская государственная академия приборостроения и информатики
«Утверждаю»
_______________/ /
«____»________________200 г.
Методические указания
к лабораторной работе №4 «Обработка запросов в базе данных»
Курс «Базы данных и экспертные системы»
Кафедра «Биомедицинские приборы и технологии»
Москва 200 г.
Методические указания к лабораторной работе №4 «Обработка запросов в базе данных» Иванова Е.Б.
Методические указания обсуждены на заседании кафедры ПР-3 «_____» ____________________200 г.
Введение.
Лабораторная работа предназначена для студентов 4-го курса факультета ПР, обучающихся по специальности 19.05. Цель работы – овладение основными приемами работы с запросами.
Содержание работы — создание запросов различных типов.
Теоретические сведения.
Понятие запроса.
В общем случае запрос — это вопрос о данных. Существуют разные типы запросов (на добавление записей, изменение, объединение).
В ряде случаев существует возможность автоматического создания запросов, и пользователю не приходится самостоятельно их создавать.
Возможно создание запросов следующих типов:
с помощью мастера создаются:
простой запрос на выборку;
перекрестный запрос;
запрос на поиск повторяющихся записей;
запрос на поиск записей без подчиненных;
без использования мастеров создаются:
запрос на выборку;
запрос с параметрами;
перекрестный запрос;
запросы SQL (запрос на объединение, запрос к серверу, управляющий запрос, подчиненный запрос);
запросы на изменение (создание таблицы, удаление, добавление и обновление записей);
запрос на автоподстановку значений.
Мастер простого запроса на выборку создает запросы для получения данных из полей, выбранных в одной или нескольких таблицах. С помощью мастера можно также вычислять суммы, количества и средние значения для всех записей или определенных групп записей, а также находить максимальное и минимальное значение в поле. Однако нельзя ограничить количество записей, возвращаемых этим запросом, с помощью условий отбора.
На первом этапе в окне базы данных выберается значок Запросы в списке Объекты и нажимается кнопка Создать на панели инструментов окна базы данных. Затем в диалоговом окне Новый запрос выберается мастер Простой запрос и нажимается кнопка OK. Указывается имя таблицы, на которой должен быть основан создаваемый запрос, и выбираются поля, данные которых нужно использовать. Далее, следуя инструкциям диалоговых окон мастера, создается запрос. Последнее диалоговое окно позволяет либо запустить запрос, либо открыть его в режиме конструктора.
Сохранение запроса — стандартная процедура и производится аналогично сохранению любого объекта БД.
Рассмотрим простейший тип: запрос-выборку.
Запрос-выборка — это производная таблица, которая содержит те же структурные элементы, что и обычная таблица (столбцы-поля и строки), и формируется на основе фактических данных системы. При создании макета запроса (т. е. производной таблицы) в общем случае необходимо выполнить четыре базовые операции:
1) указать системе, какие поля и из каких таблиц надо включить в запрос;
2) описать вычисляемые поля, т. е. поля, значения которых являются функциями значений существующих полей (например, стоимость продукции — это произведение цены на количество);
3) описать групповые операции над записями исходных таблиц;
4) указать условие отбора, т. е. сформулировать логическое выражение, которое позволит включить в выборку только записи, удовлетворяющие какому-то условию.
При разработке конкретного запроса допускается любое сочетание базовых операций. В мощных современных системах при формировании запроса иногда достаточно выполнить только операцию (4), т. е. сформулировать логическое выражение.
В общем случае для создания произвольного запроса используется универсальный язык SQL. Однако обычные пользователи используют упрощенный механизм создания запроса, называемый QBE (Query By Example — Запрос по образцу). Пользователю предлагают бланк QBE — некую модель, заготовку запроса, который заполняется по определенным соглашениям.
Для создания запроса на выборку следует выполнить:
В окне базы данных откройте панель Запросы. Дважды щелкните на значке Создание запроса в режиме Конструктора — откроется бланк запроса по образцу. Одновременно с ним откроется диалоговое окно Добавление таблицы.
В окне Добавление таблицы выберите таблицу(ы) и щелкните на кнопке Добавить. Закройте окно Добавление таблицы. Примечание. Обратите внимание, что запрос — это единственный объект в MS Access, для которого можно указать несколько исходных таблиц и (или) запросов.
В верхней части окна запроса показана схема данных выбранных таблиц, с указанием связей и имен всех полей.
В нижней части окна размещается бланк QBE, который представляет собой макет некоей таблицы. Столбцы этой таблицы соответствуют полям создаваемого запроса, а число строк переменно и зависит от состояния флажков «Имена таблиц» и «Групповые операции» (на панели инструментов или в пункте Вид).
В строке Поле: укажите имена столбцов (полей) создаваемого запроса: в списке полей таблицы выберите двойными щелчками поля, включаемые в результирующую таблицу. В ячейке Имя таблицы: (она появляется в бланке, если установлен флажок «Имена таблиц»), возникает имя таблицы, которая содержит выбранное поле. Для вычисляемого поля в строке Поле: надо набрать формулу:
<Имя поля>:<Выражение>
Например: Стоимость: [Количество]* [Цена]
Если надо проводить в запросе групповые операции (т.е. объединять записи в группы), необходимо включить флажок «Групповые операции» — появляется строка Групповая операция: После щелчка на любом поле этой строки появится список типов групповых операций: Группировка, Sum, Avg, Count, Выражение и др.
В строке Сортировка: укажите порядок вывода на экран записей (по возрастанию, по убыванию). Для сортировки по нескольким полям в бланке запроса поля располагаются в том порядке, в котором требуется выполнять сортировку (записи сортируются сначала по самому левому полю, затем по полю, расположенному в следующем столбце справа и т.д.). В ячейке Сортировка выбирается нужный параметр для каждого из полей сортировки. Для просмотра результатов запроса следует нажать кнопку Вид на панели инструментов.
В поле Вывод на экран: находятся флажки, — установка или сброс флажка означает разрешение или запрет вывода данного столбца на экран.
Наконец, в строках Условие отбора: и или: можно указать условные или логические выражения, которые позволят отобрать для запроса только записи, удовлетворяющие заданному условию. Для этого:
в ячейке Групповая операция: укажите тип Условие,
выключите флажок «Вывод на экран» (и этот столбец не будет появляться на экране);
в ячейке Условие отбора: наберите логическое выражение.
Обратите внимание на следующие соглашения, предусмотренные в Access.
Условные выражения, набранные в разных столбцах строки Условие отбора:, по умолчанию соединяются между собой знаком And.
Условные выражения, набранные в соседних строках одного и того же столбца, соединяются между собой знаком Or.
Если надо увидеть предложение SQL, описывающее запрос пользователя, то выберите команду Вид Режим SQL или щелкните на кнопке Режим SQL в панели инструментов.
Закройте бланк запроса по образцу. При закрытии запроса введите его имя.