Upload
others
View
8
Download
0
Embed Size (px)
Citation preview
1
Практическая работа 4.3. Работа с итоговыми запросами и запросами на
изменение таблиц в базе данных Microsoft Access. Создание отчетов.
Цель работы. Выполнив эту работу, Вы научитесь:
создавать итоговые запросы;
выполнять автоматическое изменение данных в таблицах с помощью
запросов на изменение;
создавать отчеты на основе базовых таблиц и результирующих таблиц
запросов.
Порядок выполнения работы
1. Изучите теоретический материал по теме.
2. Выполните практическое задание.
Практическое задание
1. Создать итоговые запросы: Запрос14, Запрос15.
2. Создать запросы на создание новых базовых таблиц: Запрос16, Запрос17.
3. Создать запросы на обновление данных: Запрос18, Запрос19.
4. Создать запросы на удаление данных из таблиц: Запрос20, Запрос21.
5. Создать отчеты: Отчет1 – Отчет4.
Технология выполнения задания
1. Запустите программу Microsoft Access. Откройте файл базы данных (Файл –
Открыть – Кадры.mdb). В окне Кадры: база данных откройте панель
Запросы.
2. Создайте итоговый запрос Запрос14 в соответствии со следующими
требованиями:
Имя
запроса
Включаемые
в запрос
поля
Какую задачу решает запрос
Запрос14 Должность
Оклад
(трижды)
Вычисляет среднее, наибольшее и наименьшее
значение по полю Оклад для каждой должности
Для создания отчета выполните следующие действия:
2
дважды щелкните на значке Создание запроса в режиме Конструктора –
откроется бланк запроса по образцу, в окне Добавление таблицы выберите
таблицу СОТРУДНИКИ;
включите в запрос поле Должность и трижды включите поле Оклад;
на панели инструментов в окне программы Microsoft Access щелкните на
кнопке Групповые операции или воспользуйтесь командами меню
(Вид – Групповые операции), в нижней части бланка появится строка
Групповые операции (рис. 26);
для поля, по которому производится группировка записей (в нашем случае –
поле Должность), оставьте в строке Групповые операции значение
Группировка, для остальных полей щелкните в этой строке – появится
кнопка раскрывающегося списка (рис. 27), из которого можно выбрать
итоговую функцию для расчета значений в данном поле;
для первого поля Оклад выберите итоговую функцию Avg для определения
среднего значения оклада по каждой должности, для второго поля Оклад –
итоговую функцию Max, определяющую наибольшее значение оклада по
каждой должности, для третьего поля Оклад – итоговую функцию Min;
закройте бланк запроса по образцу, присвоив запросу имя Запрос14.
3. Выполните запрос и проанализируйте результирующую таблицу.
Рис. 26. Формирование итогового запроса
3
Рис. 27. Итоговый запрос в режиме Конструктор
4. Создайте и выполните итоговый запрос Запрос15 в соответствии со
следующими требованиями:
Имя
запроса
Включаемые в
запрос поля
Какую задачу решает запрос
Запрос15 Город
РазмерСуточных
(трижды)
Вычисляет среднее, наибольшее и наименьшее
значение по полю РазмерСуточных для каждого
города при поездках в командировки
Запрос Запрос15 создается на базе таблицы КОМАНДИРОВКИ по аналогии с
предыдущим запросом (Запрос14).
5. Создайте запрос на создание базовой таблицы Запрос16. В результате
выполнения этого запроса в базе данных будет создана новая базовая таблица
АДРЕСА_СОТРУДНИКОВ.
Имя
запроса
Включаемые в
запрос поля
Какую задачу решает запрос
Запрос16 КодСотрудника
Фамилия
Имя
Отчество
Адрес
Телефон
Создает новую базовую таблицу
АДРЕСА_СОТРУДНИКОВ
Для создания отчета выполните следующие действия:
дважды щелкните на значке Создание запроса в режиме Конструктора –
откроется бланк запроса по образцу, в окне Добавление таблицы выберите
таблицы СОТРУДНИКИ и ЛИЧНЫЕ_ДАННЫЕ;
включите в запрос поля КодСотрудника, Фамилия, Имя, Отчество из
таблицы СОТРУДНИКИ и поля Адрес и Телефон из таблицы
ЛИЧНЫЕ_ДАННЫЕ;
откройте список инструмента Тип запроса (рис. 28) и выберите тип запроса
Создание таблицы;
4
в открывшемся диалоговом окне Создание таблицы (рис. 29) введите имя
новой таблицы АДРЕСА_СОТРУДНИКОВ, установите переключатель в
текущей базе данных и нажмите кнопку OK;
закройте бланк запроса по образцу и присвойте ему имя Запрос16.
6. Выполните запрос. Ответьте «Да» на все выводимые программой вопросы.
Переключитесь в окне базы данных на панель Таблицы. В списке таблиц
должна появиться новая таблица АДРЕСА_СОТРУДНИКОВ. Откройте таблицу
АДРЕСА_СОТРУДНИКОВ, просмотрите ее содержимое.
Рис. 28. Выбор типа запроса
Рис. 29. Диалоговое окно для ввода имени создаваемой таблицы
7. Создайте и выполните Запрос17 (запрос на создание таблицы) в соответствии
со следующими требованиями:
Имя
запроса
Включаемые в
запрос поля
Какую задачу решает запрос
Запрос17 КодСотрудника
Фамилия
Имя
Отчество
Город
ДатаОтъезда
ДатаПриезда
Создает новую базовую таблицу
КОМАНДИРОВКИ_2009. Таблица содержит
данные о командировках, для которых значение
поля ДатаОтъезда находится в диапазоне между
01.01.2008 и 31.12.2008.
5
Запрос создается на базе таблиц СОТРУДНИКИ и КОМАНДИРОВКИ по
аналогии с запросом Запрос16. На рис. 30 показан Запрос17 в режиме
Конструктор. Для поля ДатаОтъезда вводится условие отбора записей из
таблицы КОМАНДИРОВКИ в виде: Between #01.01.2008# And #31.12.2008#.
Рис. 30. Запрос17 в режиме Конструктор
8. Создайте запрос на обновление данных Запрос18 в соответствии со
следующими требованиями:
Имя
запроса
Включаемые в
запрос поля
Какую задачу решает запрос
Запрос18 Должность
Оклад
Увеличивает на 20% значения в поле Оклад
таблицы СОТРУДНИКИ для сотрудников,
работающих в должности «инженер».
Для создания отчета выполните следующие действия:
дважды щелкните на значке Создание запроса в режиме Конструктора –
откроется бланк запроса по образцу, в окне Добавление таблицы выберите
таблицу СОТРУДНИКИ, включите в запрос поля Оклад, Должность;
откройте список инструмента Тип запроса (рис. 28) и выберите тип запроса
Обновление;
в строке Условие отбора для поля Должность введите «инженер». В строке
Обновление для поля Оклад введите формулу для обновления значений:
[Оклад]*1,2 (рис. 31);
закройте бланк запроса по образцу, сохраните запрос с именем Запрос18.
6
9. Выполните запрос. Ответьте «Да» на все выводимые программой вопросы.
Переключитесь в окне базы данных на панель Таблицы. Откройте таблицу
СОТРУДНИКИ. Убедитесь, что в строках, соответствующих должности
«инженер», изменились значения окладов.
Рис. 31. Запрос на обновление значений таблицы СОТРУДНИКИ в режиме Конструктор
10. Создайте и выполните запрос на обновление данных Запрос19 соответствии
со следующими требованиями:
Имя
запроса
Включаемые в
запрос поля
Какую задачу решает запрос
Запрос19 Оклад
ДатаНазначения
Увеличивает на 30% значения в поле Оклад
таблицы СОТРУДНИКИ для сотрудников,
назначенных на должность до 01.01.2009
11. Создайте запрос на удаление данных Запрос20 в соответствии со
следующими требованиями:
Имя
запроса
Включаемые в запрос
поля
Какую задачу решает запрос
Запрос20 Поле ДатаНазначения из
таблицы
КОПИЯ_СОТРУДНИКИ,
которую нужно
предварительно создать
Удаляет из таблицы
КОПИЯ_СОТРУДНИКИ записи, для
которых значение в поле
ДатаНазначения больше 01.01.2008
Для создания таблицы КОПИЯ СОТРУДНИКИ щелкните правой кнопкой имя
таблицы СОТРУДНИКИ на вкладке Таблицы в окне Базы данных (рис. 32), в
открывшемся контекстном меню выберите команду Копировать. Затем
щелкните правой кнопкой в свободном пространстве вкладки Таблицы окна
Базы данных и выберите команду Вставить. Откроется диалоговое окно, в
котором нужно ввести имя таблицы КОПИЯ_ СОТРУДНИКИ, включить опцию
структура и данные и нажать кнопку ОК.
7
Рис. 32. Создание копии таблицы
Для создания запроса Запрос20 выполните следующие действия:
дважды щелкните на значке Создание запроса в режиме Конструктора –
откроется бланк запроса по образцу, в окне Добавление таблицы выберите
таблицу КОПИЯ_СОТРУДНИКИ;
выберите тип запроса Удаление;
переместите из списка полей таблицы КОПИЯ_СОТРУДНИКИ на бланке
запроса символ «*» в первый столбец бланка;
включите в запрос поле ДатаНазначения, в строке Условие отбора для
поля ДатаНазначения введите условие: >01.01.2008 (рис. 33);
закройте бланк запроса по образцу, сохраните запрос с именем Запрос20.
12. Выполните запрос. Ответьте «Да» на все выводимые программой вопросы.
Переключитесь в окне базы данных на панель Таблицы. Откройте таблицу
КОПИЯ_СОТРУДНИКИ. Убедитесь, что произошло удаление строк в
соответствии с заданным условием.
8
Рис. 33. Запрос на удаление записей в режиме Конструктор
13. Создайте и выполните запрос на удаление данных Запрос21 в соответствии со
следующими требованиями:
Имя
запроса
Включаемые в запрос
поля
Какую задачу решает запрос
Запрос21 Поле Должность
из таблицы
КОПИЯ_СОТРУДНИКИ
Удаляет из таблицы
КОПИЯ_СОТРУДНИКИ записи, для
которых значение в поле Должность
равно «бухгалтер» или «менеджер»
14. Создайте Автоотчет «в столбец» с именем Отчет1 на базе таблицы
СОТРУДНИКИ в соответствии со следующими требованиями:
Имя
отчета
Включаемые в
отчет поля
Представленные в отчете данные и тип отчета
Отчет1 Все поля
таблицы
СОТРУДНИКИ
Автоотчёт «в столбец» отображает данные из
таблицы СОТРУДНИКИ.
Для создания отчета выполните следующие действия:
в окне Кадры: база данных откройте панель Отчеты;
для создания автоотчета Отчет1 щелкните кнопку Создать и выберите в
открывшемся окне Новый отчет опцию Автоотчет: в столбец (рис. 34);
9
выберите таблицу СОТРУДНИКИ и щелкните кнопку OK. В результате
будет создан отчет, вид которого показан на рис. 35. Закройте отчет, при
закрытии сохраните его, присвоив имя Отчет1.
Рис. 34. Выбор параметров отчета в режиме Автоотчет
Рис. 35. Автоотчет «в столбец» на базе таблицы СОТРУДНИКИ
15. Аналогично создайте и сохраните ленточный автоотчет Отчет2 на базе
запроса Запрос1 в соответствии со следующими требованиями:
Имя
отчета
Включаемые в
отчет поля
Представленные в отчете данные и тип отчета
Отчет2 Все поля
запроса
Запрос1
Автоотчёт «ленточный» отображает данные из
результирующей таблицы запроса Запрос1
10
Процедура создания автоотчета «ленточный» аналогична процедуре создания
автоотчета «в столбец». При этом в окне Новый отчет (рис. 34) нужно выбрать
тип Автоотчет: ленточный, а в качестве источника данных выбрать запрос с
именем Запрос1. В результате будет создан отчет, вид которого показан на рис.
36.
Рис. 36. Автоотчет «ленточный» на базе запроса Запрос1
16. Создайте и сохраните отчет Отчет3 в соответствии со следующими
требованиями:
Имя
отчета
Включаемые в
отчет поля
Представленные в отчете данные и тип отчета
Отчет3 Фамилия
Имя
Отчество
Должность
Город
ДатаОтъезда
ДатаПриезда
Отчет на базе таблиц СОТРУДНИКИ и
КОМАНДИРОВКИ. Способ представления данных –
по таблице КОМАНДИРОВКИ. Группировка – по
полю Город, сортировка – по полю Фамилия.
Для создания отчета в окне Кадры: база данных на панели Отчеты дважды
щелкните инструмент Создание отчета с помощью мастера. Выполните все
шаги по созданию отчета (см. табл. 1).
11
Таблица 1. Порядок создания отчета в режиме Мастер отчетов
1 шаг. Выбор полей для включения в отчет.
2 шаг. Выбор вида представления данных по
таблице КОМАНДИРОВКИ.
3 шаг. Выбор поля Город, по которому
выполняется группировка.
4 шаг. Выбор способа сортировки записей в
каждой группе. Сортировка выполняется по
полю Фамилия.
5 шаг. Выбор макета формируемого отчета.
6 шаг. Выбор стиля оформления отчета.
12
7 шаг. Сохранение отчета с именем Отчет3.
Внешний вид полученного отчета (фрагмент)
17. Создайте и сохраните отчет Отчет4 в соответствии со следующими
требованиями:
Имя
отчета
Включаемые в
отчет поля
Представленные в отчете данные и тип отчета
Отчет4 КодСотрудника
Фамилия
Имя
Отчество
Должность
Оклад
Отчет на базе таблицы СОТРУДНИКИ. Группировка
– по полю Должность, подведение итогов – в поле
Оклад по каждой должности (среднее значение,
минимум, максимум).
При создании отчета выполните следующие рекомендации:
выполняя шаг 3, нужно установить группировку по полю Должность;
при выполнении шага 4 для подведения итогов по полю Оклад в диалоговом
окне следует щелкнуть кнопку Итоги…(рис. 37). В открывшемся окне Итоги
нужно выбрать функции для подведения итогов: функцию Avg – для
вычисления среднего арифметического значения, функцию Min – для
вычисления минимального значения, функцию Max – для вычисления
максимального значения. Каждая из выбранных функций будет применена к
выделенным на шаге 3 группам по полю Должность. Иначе говоря, будут
вычислены среднее, минимальное и максимальное значения по полю Оклад
для сотрудников, имеющих должность бухгалтер, для сотрудников, имеющих
13
должность инженер и т.д. Внешний вид полученного отчета представлен на
рис. 38.
Рис. 37. Подведение итогов в отчете
Рис. 38. Внешний вид отчета с подведенными итогами
18. Завершите работу с базой данных.