Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основы_СУБД_Access.doc
Скачиваний:
5
Добавлен:
01.03.2025
Размер:
2 Мб
Скачать
☆

1.3.6.Работа с запросами к бд

Для отбора информации из БД можно использовать запросы, при работе с которыми можно устанавливать фильтры для отбора данных.

Задание 16. Создайте запрос, позволяющий отбирать информацию о сотрудниках на основании различных критериев, определяемых с помощью фильтра.

Для создания запроса необходимо:

  1. В окне БД переключиться на вкладку «Запросы».

  2. Щелкнуть кнопку Создать.

  3. В диалоговом окне «Новый запрос» выбрать тип запроса (выберем наиболее простой вариант – «Простой запрос») и щелкнуть кнопку ОК.

  4. В списке «Таблицы/Запросы» выберите строку «Таблица: Должности сотрудников». С помощью кнопки  >  выберите из списка доступных в таблице полей поля для включения их в запрос (рис. 20).

Рис. 20. Выбор полей

  1. В списке «Таблицы/Запросы» выберите строку «Таблица: Сотрудники». С помощью кнопки  >  выберите из списка доступных в таблице полей нужные поля для включения их в запрос.

  2. Повторите шаг 5 для таблиц «Должности» и «Организации».

  3. Щелкните кнопку Далее.

  4. В следующем диалоговом окне установите переключатель «подробный…» и щелкните кнопку Далее.

  5. Задайте имя запроса «Штатные сотрудники», установите переключатель «открытие результатов…» и щелкните кнопку Готово.

Результаты созданного запроса будут представлены на экране в виде таблицы (рис. 21).

Определим критерий отбора информации из этой таблицы с помощью фильтра. Для этого необходимо:

  1. Выполнить команду ЗаписиФильтрИзменить фильтр.

  2. Установить с помощью мыши флажок в поле «Штатный» (рис. 22).

  3. Выполнить команду ЗаписиПрименить фильтр.

Рис. 21. Результаты запроса

Рис. 22. Определение фильтра

В результате отбора информации с помощью фильтра в таблице остались только записи о штатных сотрудниках различных организаций (рис. 23).

Работать с такой информацией не очень удобно. Поэтому можно для работы с запросами создать формы, как и для работы с таблицами.

Для управления запросами, отображением информации и условиями ее отбора можно использовать Конструктор. Настройте Запрос с помощью Конструктора, как это показано на рис. 24, выбирая нужные поля с помощью мыши.

Для вывода результатов выполнения запроса можно использовать отчеты.

Рис. 23. Результат применения фильтра

Рис. 24. Конструктор запросов

Для создания фильтра в строке «Условие отбора» для соответствующего столбца, для значений в котором устанавливается фильтр, задается условие, налагаемое на значение атрибута. Условия, задание в одной строке, объединяются логической операцией «И», а в нескольких строках – «ИЛИ». Для выбора данных, для которых в нужном поле должно содержаться определенное значение, достаточно указать это значение в строке «Условие отбора» (рис. 25).

Рис. 25. Выбор штатных сотрудников: запрос и его результат

Можно создать «параметризованный» запрос, при использовании которого значение для фильтра задается при выполнении запроса. Для этого текст приглашения к вводу нужного значения заносится в строку условия в квадратных скобках (рис. 26). Показан пример конструирования запроса, в котором отбираются штатные сотрудники организации, название которой вводится при выполнении запроса и результат его выполнения.

Рис. 26. Выбор штатных сотрудников организации: запрос и его результат

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

Рис. 27. Формирование запроса на обновление

Выражение для вычисления нового значения атрибута задается в строке «Обновление» соответствующего столбца. При выполнении запроса выдается запрос на подтверждение обновления записей в БД.

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

Рис. 28. Создание формы запроса и ее использование

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