Лабораторная работа 6. Создание и использование запросов (продолжение)
Цели работы:
• закрепить навыки по созданию таблиц;
• продолжить знакомство с основными видами запросов;
• научиться создавать запросы: на обновление, на добавление, на удаление, на создание таблицы;
• научиться создавать перекрестные запросы.
Ход работы
Предположим, что школа № 3 аккредитовалась как Лицей, а школа № 5 - как Гимназия, прошел год, и ученики перешли в следующий класс, некоторые из них закончили школу, пришли новые. Нужно обновить базу данных.
Задание 1. Откройте учебную базу данных, изготовленную на прошлом занятии.
Порядок работы:
• Вызовите программу Access. Для этого дважды щелкните по пиктограмме Microsoft Access. Перед вами откроется окно системы управления базами данных, в котором появится меню.
• Включите мышкой переключатель Открыть базу данных, выделите из списка баз данных, расположенного ниже переключателя, имя вашей базы данных и щелкните по кнопке ОК. На экране появится окно с основными элементами базы данных. В базе данных должны быть три таблицы: Список, Личные данные и Группы. В случае их отсутствия импортируйте данные таблицы из чужой базы данных (возможно, эталонной базы данных учителя).
Самостоятельное задание. 1. Создайте новую таблицу с названием Новая группа и текстовыми полями Фамилия, Имя, Отчество и числовым полем Учебная группа с полем подстановок из таблицы Группы. Для этого:
• Задайте ключевое поле Код.
•
Заполните
значениями: Сидорова Анна Ивановна, Петрова
Инна
Сергеевна, Сергеева Ирина Петровна, Куликова Оль
га
Дмитриевна. Номер группы 101.
• Закройте таблицу, предварительно сохранив ее.
Задание 2. Постройте запрос на обновление.
Школа № 3 стала лицеем, а школа № 5 - гимназией. Нужно исправить значения полей в таблице Список: заменить номер школы 3 на слово Лицей, а номер школы 5 - на слово Гимназия.
Замечание. Это невозможно будет сделать при существующей структуре данных, так как поле Школа объявлено числовым, а мы пытаемся заменить его на слово. Необходимо предварительно сменить тип поля Школа на текстовый. Для этого следует:
• перейти на закладку Таблица;
• выделить таблицу Список;
• щелкнуть по кнопке Конструктор;
• исправить тип поля Школа на текстовый;
• сохранить таблицу.
• закрыть таблицу.
Порядок работы:
• Выберите закладку Запрос, если находитесь в другом окне.
• Щелкните мышкой по кнопке Создать.
• В появившемся диалоговом окне выберите Конструктор, щелкните по кнопке ОК.
• Добавьте таблицу Список, выбрав ее из списка и щелкнув по кнопке Добавить.
• Закончите выбор, щелкнув по кнопке Закрыть.
• Выберите поле Школа из таблицы Список, щелкнув по нему мышкой два раза.
• Щелкните по стрелке рядом с кнопкой Тип запроса на панели инструментов (рис. 35) и выберите команду Обновление.
Рис. 35
• Введите условие замены: в поле Школа заменить все цифры 3 на слово Лицей. Условие отбора представлено на рис. 36.
Рис. 36
• Щелкните по кнопке для выполнения запроса.
• Подтвердите обновление записей. Если вы сейчас перейдете в режим таблицы, то, естественно, не увидите ни одной записи, так как цифры 3 заменились на слово Лицей, а условие - на выбор школы 3 не дает ни одной записи. Удалив в строке Условие отбора цифру 3, увидите в режиме таблицы результат замены.
• Закройте запрос, сохранив его с именем Лицей.
• Выберите вкладку Таблицы.
• Откройте таблицу Список. Просмотрите результат применения запроса.
Самостоятельное задание. Создайте запрос Гимназия, меняющий значения поля школа 5 на слово Гимназия (по аналогии с запросом Лицей).
Задание 3. Постройте запрос на добавление.
Примечание. Записи из таблицы Новая группа нужно добавить в таблицу Список. При возникновении трудностей задания 3 и 4 можно не выполнять.
Порядок работы:
• Выберите закладку Запрос, если находитесь в другом окне.
• Щелкните мышкой по кнопке Создать.
• В появившемся диалоговом окне выберите режим Конструктор, щелкните по кнопке ОК.
• Добавьте таблицу Новая группа, выбрав ее и щелкнув по кнопке Добавить.
• Закончите выбор, щелкнув по кнопке Закрыть.
• Выберите те поля, которые нужно добавить (Фамилия, Имя, Отчество, Учебная группа) согласно рис. 37. (Если у какого-либо поля поставить условие отбора, то добавятся только записи, удовлетворяющие этому условию).
• Щелкните по стрелке рядом с кнопкой Тип запроса на панели инструментов и выполните команду Добавление.
• В появившемся диалоговом окне выберите имя таблицы Список, в которую будут добавляться данные. Эта таблица может быть из текущей базы данных или из любой другой. В данном случае у нас одна база данных, поэтому щелкните по кнопке ОК.
Рис. 37
• Щелкните по кнопке для выполнения запроса. Подтвердите выполнение запроса.
Замечание. Если появляется ошибка в выполнении данного запроса, то откройте схему данных, щелкнув дважды по связи Список-Личные данные, удалите условие Каскадное удаление связанных полей и Каскадное обновление связанных полей. Видимо, вы нечаянно их включили, хотя в работе 3 этого не требовалось. При включении условия Каскадное обновление связанных полей эти поля нельзя вводить отдельно.
• Закройте запрос, сохранив его с именем Добавление.
• Перейдите на закладку Таблицы. Откройте таблицу Список и убедитесь, что данные записи были добавлены.
Задание 4. Постройте запрос на удаление.
Пояснение. Нужно удалить записи тех учеников, которые закончили школу (в данном случае тех, у которых класс был 11). Предварительно разорвите связь Список - Личные данные.
Порядок работы:-
• Выберите закладку Запрос, если находитесь в другом окне.
• Щелкните мышкой по кнопке Создать.
• В появившемся диалоговом окне выберите режим Конструктор, щелкните по кнопке ОК.
• Добавьте таблицу Список, выбрав ее из списка и щелкнув по кнопке Добавить.
• Закончите выбор, щелкнув по кнопке Закрыть.
• Щелкните по стрелке рядом с кнопкой Тип запроса на панели инструментов и выполните команду Удаление.
• Выберите поле Класс из таблицы Список, щелкнув по нему мышкой два раза.
• Введите условие отбора 11 (рис. 38).
Рис. 38
Замечание. Для предварительного просмотра удаляемых записей щелкните по кнопке— Вид на панели инструментов. Для возврата в режим Конструктор снова щелкните по
этой кнопке на панели инструментов. Любые изменения следует вносить в режиме Конструктор.
• Щелкните по кнопке для выполнения запроса. Появится сообщение, что процесс удаления будет необратим. Подтвердите удаление записей.
• Закройте запрос, сохранив его с именем Удаление.
• Перейдите на закладку Таблицы. Откройте таблицу Список и убедитесь, что данные записи были удалены.
Самостоятельное задание. Создайте запросы на обновление с именами 10_класс, 9_класс, которые меняют класс на единицу больше (10 на 11, 9 на 10). Заполните недостающие данные для добавленных записей, указав для них класс 9.
Задание 5. Выполните запрос на создание таблицы.
Бывают ситуации, когда из старых таблиц нужно составить новые с другим набором полей. Предположим, что мы хотим создать таблицы успеваемости для учеников разных групп, поместив поля Фамилия, Имя, Отчество из таблицы Список и поля Word, Excel и Access - из таблицы Личные данные. (Снова создайте связь Список - Личные данные).
Порядок работы:
• Выберите закладку Запрос, если находитесь в другом окне.
• Щелкните мышкой по кнопке Создать.
• В появившемся диалоговом окне выберите режим Конструктор, щелкнув по кнопке ОК.
• Добавьте таблицы Список и Личные данные, выбрав их и щелкнув по кнопке Добавить.
• Закончите выбор, щелкнув по кнопке Закрыть.
• Щелкните по стрелке рядом с кнопкой Тип запроса на панели инструментов и выполните команду Создание таблицы ....
• Напечатайте имя таблицы Успеваемость и щелкните по кнопке ОК.
• Выберите поля Фамилия, Имя, Отчество и Учебная группа из таблицы Список и поля Word, Excel и Access - из таблицы Личные данные (рис. 39).
Рис. 39
• Щелкните по кнопке для выполнения запроса. Подтвердите выполнение запроса. Закройте запрос, сохранив его с именем Новая_таблица.
• Перейдите на закладку Таблицы. Откройте таблицу Успеваемость и убедитесь, что записи были добавлены. Причем добавлено только 10 записей, так как в таблицу Личные данные дополнительные записи не вошли.
Задание 6. Создайте перекрестный запрос.
Допустим, вам нужно подсчитать для экзаменационной ведомости, сколько в группе, занимающейся изучением программы Word, получено «троек», «четверок» и «пятерок». Для подобных целей используется перекрестный запрос.
Порядок работы:
• Выберите закладку Запрос, если находитесь в другом окне.
• Щелкните мышкой по кнопке Создать.
• В появившемся диалоговом окне выберите Перекрестный запрос, щелкнув по кнопке ОК.
• В окне Создание перекрестных запросов выделите таблицу Успеваемость и щелкните по кнопке Далее.
• Выберите поле, значения которого будут использоваться в качестве заголовков строк, - Учебная группа. Щелкните по кнопке Далее.
• Выберите поле, значения которого будут использоваться в качестве заголовков столбцов, например Word. Щелкните по кнопке Далее.
• Выберите функцию, по которой будут вычисляться значения ячеек на пересечении столбцов и строк (в данном случае Count - количество). Здесь вы можете добавить итоговое поле для каждой строки (в данном случае это поле покажет общее количество оценок по каждой группе). Щелкните по кнопке Далее.
• Задайте имя запроса Word. Щелкните по кнопке Готово.
Самостоятельное задание. Составьте аналогичные запросы для оценок, полученных группой по изучению Excel и Access.
Предъявите преподавателю: запросы Лицей, Гимназия, Добавление, 10_класс, 9_класс, Удаление, Новая _таблица и Word на экране дисплея.
Задание 7. Завершите работу с Access.
Порядок работы:
• Выполните команду Файл - Выход.
• Если вы производили редактирование в базе данных, появится вопрос о сохранении изменений. Ответьте на него утвердительно.