Просмотр содержимого документа
«Практическое занятие №17 (2ТО)»
Практическая работа №17
Тема:работа с базами данных в Microsoft Access
Цель работы: освоить базовые навыки создания и управления базами данных в СУБД Microsoft Access: создание таблиц, установление связей между ними, ввод данных, формирование запросов, форм и отчётов.
Оборудование и ПО: компьютер с установленной программой Microsoft Access (версии 2010 и выше).
Задание 1. Создание базы данных и таблиц
Запустите Microsoft Access.
Выберите «Новая база данных».
Введите имя файла — «Библиотека» и нажмите «Создать».
Создайте таблицу «Авторы» в режиме Конструктора таблиц:
Поля:
КодАвтора (тип данных — Счётчик, установите как Ключевое поле);
Фамилия (тип — Короткий текст);
Имя (тип — Короткий текст);
Отчество (тип — Короткий текст);
ГодРождения (тип — Числовой).
Сохраните таблицу под именем «Авторы».
Создайте таблицу «Книги» в режиме Конструктора таблиц:
Поля:
КодКниги (тип — Счётчик, Ключевое поле);
Название (тип — Короткий текст);
Жанр (тип — Короткий текст);
ГодИздания (тип — Числовой);
Издательство (тип — Короткий текст);
КодАвтора (тип — Числовой).
Сохраните таблицу под именем «Книги».
Задание 2. Установление связей между таблицами
Перейдите на вкладку «Работа с базами данных» → «Схема данных».
В окне «Добавление таблицы» выберите таблицы «Авторы» и «Книги», нажмите «Добавить», затем «Закрыть».
Перетащите поле КодАвтора из таблицы «Авторы» на поле КодАвтора в таблице «Книги».
В диалоговом окне «Изменение связей»:
установите флажок «Обеспечение целостности данных»;
включите «Каскадное обновление связанных полей» и «Каскадное удаление связанных записей»;
нажмите «Создать» (появится связь «один‑ко‑многим»).
Закройте окно схемы данных, сохранив изменения.
Задание 3. Ввод данных в таблицы
Откройте таблицу «Авторы» двойным щелчком мыши.
Введите 5–7 записей, например:
| КодАвтора | Фамилия | Имя | Отчество | ГодРождения |
| 1 | Толстой | Лев | Николаевич | 1828 |
| 2 | Достоевский | Фёдор | Михайлович | 1821 |
Откройте таблицу «Книги» и введите 10–15 записей, используя существующие КодАвтора. Пример:
| КодКниги | Название | Жанр | ГодИздания | Издательство | КодАвтора |
| 1 | Война и мир | Роман | 1869 | Эксмо | 1 |
| 2 | Преступление и наказание | Роман | 1866 | АСТ | 2 |
Задание 4. Создание запросов
Создайте запрос на выборку книг определённого жанра:
перейдите на вкладку «Создание» → «Конструктор запросов»;
добавьте таблицы «Книги» и «Авторы»;
перетащите поля: Название, Жанр, ГодИздания, Фамилия, Имя в бланк запроса;
в строке «Условие отбора» для поля Жанр укажите, например, "Роман";
сохраните запрос как «Романы».
Создайте запрос с параметром для поиска книг по году издания:
в поле ГодИздания в строке «Условие отбора» введите [Введите год издания:];
сохраните запрос как «КнигиПоГоду».
Задание 5. Создание форм
Для таблицы «Авторы» создайте форму:
выделите таблицу «Авторы» → вкладка «Создание» → «Форма»;
настройте внешний вид формы (шрифты, цвета) на вкладке «Формат»;
сохраните форму как «Форма_Авторы».
Для ввода данных в таблицу «Книги» создайте форму с подчинённой формой:
используйте «Мастер форм» (вкладка «Создание» → «Мастер форм»);
выберите таблицы «Авторы» (главная) и «Книги» (подчиненная);
сохраните как «Форма_Книги_с_Авторами».
Задание 6. Создание отчётов
Сформируйте отчёт по книгам каждого автора:
перейдите на вкладку «Создание» → «Мастер отчётов»;
выберите таблицу «Книги», включите поля: Название, Жанр, ГодИздания, Издательство, Фамилия (из таблицы «Авторы»);
задайте группировку по полю Фамилия;
отсортируйте записи по Название (по возрастанию);
выберите макет «Ступенчатый», ориентацию «Книжная»;
назовите отчёт «Отчёт_Книги_по_Авторам».
Настройте оформление отчёта (заголовки, шрифты, границы) в режиме «Конструктор».
Вопросы для самоконтроля
Что такое ключевое поле и зачем оно нужно?
Какой тип связи установлен между таблицами «Авторы» и «Книги»? Приведите пример другой возможной связи.
В чём разница между запросом на выборку и запросом с параметром?
Для чего используются формы в Access?
Как обеспечить целостность данных при удалении записи из родительской таблицы?