Практическая работа № 3


Тема: Создание запросов в СУБД Microsoft Access

Цель занятия: Изучение информационной технологии создания форм для таблиц  баз данных


&? Содержание работы:

  1. Создание запросов на выборку
  2. Создание запросов с параметрами
  3. Вычисления в запросах
  4. Итоговые запросы


Ход работы:


ЗАПРОСЫ НА ВЫБОРКУ

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

Для создания запроса в Access используется бланк запроса по образцу.

Задание 1:

Для базы данных Деканат.accdb создадим запрос  «Успеваемость студентов_1», в котором будут отображаться фамилии студентов, которые получили оценку Отлично по дисциплинам. Т.о. запрос будет содержать поля ФИО, Группы студентов, Дисциплины, Оценка. Отсортировать фамилии студентов по возрастанию.

ДЛЯ ЭТОГО ВЫПОЛНИТЕ СЛЕДУЮЩИЕ ДЕЙСТВИЯ:

  1. Откройте базу данных Деканат.accdb
  2. Перейдите на страницу ленты Создание и нажмите кнопку Конструктор запросов
  3. В окне Добавление таблиц протягиванием выделите все таблицы и нажмите кнопку Добавить
  4. Окно Добавления таблиц закройте
  5. Из каждой таблицы двойным щелчком выберите нужные поля:
  • Из таблицы Студенты – поле ФИО
  • Из таблицы Группы студентов – поле КодГруппы
  • Из таблицы Дисциплины – поле Название
  • Из таблицы Успеваемость – поле Оценка
  1. В нижней части бланка запроса:
  • В поле ФИО в строке сортировка задайте сортировку по возрастанию
  • В поле Оценка в строке условие отбора запишите «Отлично»

  1. Просмотрите как работает запрос, нажав на кнопку Режим, Режим таблицы
  2. Если запрос работает верно, сохраните его под именем Успеваемость студентов_1



Задание 2:

Для базы данных Деканат.accdb создадим запрос  «Успеваемость студентов_2», в котором будут отображаться фамилии студентов, которые получили оценки Отлично или Хорошо по дисциплинам.


  1. Оформите бланк запроса по образцу приведенному ниже

  1. Сохраните запрос под именем Успеваемость студентов_2
  2. Откройте и проверьте, как работает созданный запрос
  3. Закройте базу данных  Деканат.accdb


  1. Выполните копирование файлов map.mdb, sport.mdb, avto.mdb из папки D:\Базы данных в свою папку Моя база данных
  2. Откройте в программе Access из своей папки Моя база данных базу map.mdb
  3. Изучите таблицы базы данных
  4. Посмотрите, как связаны таблицы между собой (Схема данных)
  5. Изучите поля таблицы Материки и Главные реки


Задание 3.

Создайте запрос для базы данных Map.mdb, определяющий название рек, длина которых более 3000 км, а также название материка, на котором находится соответствующая река.

ДЛЯ ЭТОГО ВЫПОЛНИТЕ СЛЕДУЮЩИЕ ДЕЙСТВИЯ:

  1. В базе данных Map.mdb и перейдите на страницу ленты Создание, щелкните на кнопке Конструктор запросов
  2. В диалоговом окне Добавление таблицы выберите таблицы участвующие в запросе (Материк, Главные реки)
  3. Заполните бланк запроса по образцу приведенному ниже




  1. Сохраните и закройте запрос
  2. Откройте запрос в режиме таблиц (двойным щелчком) и убедитесь в правильности работы результирующей таблицы

Задания для самостоятельного выполнения

Выполнить задание в базе данных Деканат.accdb

  1. Создать запрос, который выводил бы ФИО студентов, Специальность и Курс. Запрос сохранить под именем Списки студентов_1
  2. Создать запрос, который выводил бы ФИО студентов, КодГруппы, Специальность, Дисциплину, Вид контроля и Оценку для тех студентов, которые получили Удовлетворительно. Запрос  сохранить под именем Списки студентов_2.
  3. Создать запрос, который выводил бы ФИО студентов, Курс, КодГруппы, Название дисциплины, Вид контроля и Оценку. Выбор сделать по всем студентам первого курса для дисциплин Менеджмент и Маркетинг, получившим оценку Хорошо. Запрос сохранить под именем Список студентов_3
  4. Создать запрос, который выводил бы ФИО студентов, КодГруппы, Курс, Пол, Дату и место рождения. Выбор сделать по всем студентам, проживающим в г. Тирасполе и г. Рыбницы. Запрос сохранить под именем Списки студентов_4
  5. Создать запрос, который выводил бы ФИО студентов, КодГруппы, Название дисциплины, Вид контроля и Оценку. Выбор сделать по всем студентам сдающим Экзамен. Запрос сохранить под именем Список студентов_5

Выполнить задание в базе данных map.mdb

  1. Создайте запрос для map.mdb, который выводил бы информацию о реках, длина которых больше 3000 км., но меньше 6000 км. Отсортировать их названия по алфавиту (сложное условие определения длины запишется >3000 and <6000)

Запрос сохранить под именем Запрос_1

  1. Создайте запрос для map.mdb, который выводил бы информацию о вулканах, высота которых более 5000 км. Название вулканов отсортировано в алфавитном порядке. Запрос сохранить под именем Запрос_2
  2. Создайте запрос для map.mdb, который выводил бы информацию о водопадах, высота которых больше 100 км, но меньше 900 км, находящихся в Африке, Южной или Северной Америке (сложное условие определения нужным материков запишется   = “Африка” Or = “Южная Америка” Or = “Северная Америка”). Запрос сохранить под именем Запрос_3
  3. Создать запрос для базы данных map.mdb выводящий название водопадов с высотой падения более 100 м, находящиеся в Африке. Запрос сохранить под именем Запрос_4
  4. Для базы данных map.mdb создайте  запрос, который выводил бы информацию о реках, название которых начинается на букву «М» и длина которых не превышает 5000 км. (Буквы русского и английского алфавита находятся в ряду и также как и числовой ряд подчиняются правилу А<Б<В<…<Ю<Я, A<B<C<…<Y<Z, поэтому для выбора слов начинающихся на букву М необходимо записать условие >= “М” and < “Н”). Запрос сохранить под именем Запрос_5


ЗАПРОСЫ С ПАРАМЕТРОМ

Предоставляет возможность выбора того, что хочет найти пользователь в таблицах БД. Для этой цели служит команда LIKE  […], которая вводится в строке Условие отбора бланка запроса в том поле, по которому необходимо выполнить запрос. В квадратных скобках можно записать любой текст, обращенный к пользователю.


Задание  4.

Создайте запрос с параметром для таблицы Чемпионаты мира БД sport.mdb, который выводил бы сведения о том, когда та или иная команда заняла 1 место (название страны вводится в качестве параметра)

ДЛЯ ЭТОГО ВЫПОЛНИТЕ СЛЕДУЮЩИЕ ДЕЙСТВИЯ:

  1. Откройте базу данных Sport.mdb
  2. Откройте таблицу Чемпионаты мира и изучите ее. Закройте таблицу
  3. Перейдите на страницу ленты Создание, щелкните на кнопке Конструктор запросов
  4. В диалоговом окне Добавление таблицы выберите таблицу Чемпионаты мира
  5. Заполните бланк запроса по образцу приведенному ниже



  1. Сохраните запрос под именем Запрос с параметром_1, а затем откройте запрос
  2. При запуске, запрос попросит ввести название страны
  3. Поочередно введите страны Бразилия, Италия, Франция и проверьте работу запроса

Задание для самостоятельного выполнения

  1. Создайте для базы данных sport.mdb (таблица Итоги по командам) запрос, который по названию страны (вводится в качестве параметра) выводит: общее число побед, поражений, число пропущенных голов. Запрос сохранить под именем Запрос с параметром_2
  2. Создайте запрос для базы данных sport.mdb (таблица Чемпионаты мира),  который выводил бы сведения о занятых местах командами в том или ином году (год вводится в качестве параметра). Запрос сохранить под именем Запрос с параметром_3
  3. Самостоятельно создать запрос БД map.mdb, который выводил бы название вулканов и их высоту над уровнем моря для материка, название которого вводится в качестве параметра. Запрос сохранить под именем Запрос с параметром_4
  4. Проверьте правильность работы запроса для материков: Европа, Азия, Африка. Запрос сохранить под именем Запрос с параметром_5
  5. Для базы данных Деканат.accdb создать запрос, в результате которого будет выводиться ФИО студента, Название группы, Дисциплина и Оценка, полученная студентом по дисциплине, название которой вводится с клавиатуры как параметр. Запрос сохранить под именем Запрос с параметром_6
  6. Для базы данных Деканат.accdb создать запрос, который выводил бы ФИО студента, Название дисциплины, Оценку и Вид контроля для Курса, номер которого вводится в качестве параметра. Запрос сохранить под именем Запрос с параметром_7
  7. Для базы данных Деканат.accdb создать запрос, который выводил бы полную информацию по студенту (ФИО, Группа, Специальность, Пол,т Дата рождения, Названия сдаваемых дисциплин, Оценка и Вид контроля) ФИО студента вводится в качестве параметра. Запрос сохранить под именем Запрос с параметром_8



ВЫЧИСЛЕНИЯ В ЗАПРОСАХ

Для создания такого запроса используется тот же бланк запроса по образцу, только в одном из столбцов вместо имени поля записывают формулу. В формулу вводят Название нового поля, : (двоеточие), в квадратных скобках [Название полей участвующих в расчетах] и знаки арифметических операций


Задание  5.

Создайте запрос для базы данных Sport.mdb (таблица Итоги по командам), содержащий новое поле Результативность (Результативность посчитать как отношение количества забитых мячей к проведенным играм [Забито]/[Игры].  Лучший тот, значение Результативности которого больше (отсортируйте поле Результативность по убыванию)

ЗАПРОС СОЗДАЙТЕ ПО ОБРАЗЦУ ПРИВЕДЕНОМУ НИЖЕ:

Запрос сохранить под именем Запрос с вычислениями_1

Проверьте работу созданного запроса


ИТОГОВЫЕ ЗАПРОСЫ

Итоговые запросы – позволяют вычислять сумму, среднее значение, максимум и др. всех значений в какой-то группе записей. В бланк запроса вводится дополнительная строка Группировка, щелчком на кнопке е на панели инструментов Access. В тех полях, по которым надо провести итоговые вычисления в строке Группировка раскрыть список и выбрать нужную функцию.

Задание  6.

Создайте итоговый запрос для БД Авто.mdb (таблица Автосалон) определяющий суммарную, максимальную, минимальную, среднюю стоимость автомобилей одной марки по разным годам  выпуска.

ДЛЯ ЭТОГО ВЫПОЛНИТЕ СЛЕДУЮЩИЕ ДЕЙСТВИЯ:

  1. Откройте базу данных авто.mdb
  2. Откройте таблицу Автосалон и изучите ее. Закройте таблицу
  3. Перейдите на страницу ленты Создание, щелкните на кнопке Конструктор запросов
  4. В диалоговом окне Добавление таблицы выберите таблицу Автосалон
  5. Заполните бланк запроса по образцу приведенному ниже



  1. Для появления в бланке запроса строки Групповые операции, щелкните на одноименной кнопке е  ИТОГИ на странице ленты Работа с запросами, Конструктор.
  2. Запрос сохранить под именем Итоговый запрос_1
  3. Проверьте работу созданного запроса