•          Теория
  •    Задания
  •    Тесты
  •    Вопросы
  •     Учебная программа

MS Access. Запросы

1. Создайте в режиме конструктора запрос для отбора записей о книгах издательства Питер. Сохраните запрос в базе данных под именем Фамилия_1:

1.1. Создайте новый запрос в режиме конструктора

1.2. Определите таблицы, необходимые для создания запроса, для чего в диалоговом окне Добавление таблицы двойным щелчком мыши выделите таблицу Книги.

1.3. Определите поля, необходимые для создания запроса:

  • добавьте в бланк запроса поле Автор: установите курсор мыши на поле Автор и списке полей таблицы Книги в верхней части окна запроса / нажмите левую кнопку мыши и, не отпуская, переместите поле Автор в первый столбец бланка запроса;
  • добавьте в бланк запроса поле Название: перенесите мышью поле Названиеиз списка полей таблицы Книги в верхней части окна запроса во второй столбец бланка запроса;
  • добавьте в бланк запроса поле Город: двойной щелчок мышью по полю Городв списке полей таблицы Книги в верхней части окна запроса (оно будет помещено в следующий свободный столбец бланка запроса);
  • аналогичным образом добавьте и бланк запроса поля Издательство,Количество страниц и Год издания.

1.4. Задайте сортировку записей динамической таблицы по возрастанию по полю Год издании.

1.5. Укажите, что все поля запроса должны выводиться на экран, для чего проверьте наличие флажков в строке Вывод на экран бланка запроса для всех добавленных полей.

1.6. Определите условие выбора данных, для чего в строке Условие отборабланка запроса для поля Издательство / введите: Питер и нажмите клавишуEnter (после нажатия на Enter Microsoft Access проанализирует введенное выражение и, возможно, исправит синтаксис. В данном случае к введенному тексту, используемому в качестве условия отбора, автоматически будут добавлены кавычки).

1.7. Сохраните запрос под именем Фамилия_1.

1.8. Выполните запрос и просмотрите его результаты в режиме таблицы

1.9. Вернитесь в режим конструктора

1.10. Переименуйте поле Количество страниц в Объем в результирующей динамической таблице, для этого щелчком мыши установите текстовый курсор перед именем поля Количество страниц и введите: Объем: В результате получится следующее выражение: Объем: Количество страниц.
Просмотрите полученный результат.

2. Создайте следующие запросы в режиме конструктора (условие отбора вводится исходя из названия запроса). Запросы следует сохранять под своей фамилией с указанием номера завпроса, например, Фамилия_2_1

Название запроса Используемые таблицы Выводимые поля
2.1. Список книг издательства Вильямс Книги
Автор
Название
Город
Издательство
Год издания
Количество страниц
Стоимость

2.2. Электронная почта читателей

Примечание: необходимо вывести информацию только о тех читателях,для которых указан адрес электронной почты

Читатели

Фамилия
Имя
Отчество
Место работы
Должность
Город
Адрес
E-mail
2.3. Невозвращенные книги

Примечание: необходимо вывести информацию о книгах, выданных читателям и невозвращенным пока в библиотеку

Книги

 

Автор
Название
Город
Издательство
Год издания
Количество страниц
Стоимость
Читатели
Фамилия
Имя
Отчество
Телефон
Адрес
E-mail
Выдачи Отметка о возврате

2.4. Посещение библиотеки за 2 (для четных вариантов) или за 3 (для нечетных вариантов) квартал (2005+n) года. Здесь и ддалее n - номер Вашего варианта

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

Читатели

Фамилия
Имя
Отчество
Место работы
Должность
Телефон
Выдачи Дата выдачи
Книги
Автор
Название
2.5. Книги, изданные в Санкт-Петербурге и Москве, начиная с (2005+n) года Книги
Название
Город
Издательство
Год издания
Количество страниц
Стоимость
2.6. Книги, изданные в Минске или стоимость которых выше (10+n) р. Книги
Название
Город
Издательство
Год издания
Количество страниц
Стоимость
2.7. Книги, изданные в период с 2005 по (2010+n) годы, стоимость которых не выше (30-n) р. Книги
Название
Город
Издательство
Год издания
Количество страниц
Стоимость

3. Создайте параметрический запрос "Выбор книг по году издания" для отбора записей о книгах, изданных начиная с указанного года.

3.1. Создайте новый запрос в режиме конструктора на основе таблицы Книги с полями Автор, Название, Город, Издательство, Год издания и Количество страниц.

3.2. Задайте сортировку записей динамической таблицы по возрастанию по полюГод издания.

3.3. Укажите, что на экран должны выводиться все поля запроса.

3.4. Определите условие выбора данных: в строку Условие отбора бланка запроса для поля Год издания введите выражение: >=[Введите начальный год] и нажмите клавишу Enter.

3.5. Определите тип данных для параметра начальный год:

  • нажмите кнопку Параметры...;
  • в первую строку столбца Параметр введите имя параметра: Введите начальный год / в столбце Тип данных для этого параметра выберите из списка Целое /  ОК.

Примечание. Текст, введенный в качестве имени параметра в бланке запроса, должен в точности соответствовать тексту, введенному в диалоговое окно Параметры запросапри определении типа данных параметра. В противном случае Microsoft Access воспринимает их как два разных параметра. Следует иметь в виду, что при удалении параметра из бланка запроса необходимо удалить его и из диалогового окна Параметры запроса.

3.6. Выполните запрос и просмотрите его результаты в режиме таблицы

3.7. Сохраните запрос под именем Фамилия_3.

4. Создайте параметрический запрос "Предпочтения читателя" для отбора записей о книгах, которые брал указанный читатель, с указанием даты взятия и информации о возврате книги. Имя запроса - Фамилия_4

5.Создайте, используя мастер вычислений , запрос под именем вида "Фамилия_5", содержащий все поля таблицы Книги, а также дополнительные вычисляемые поля
- "Стоимость в евро", в которой стоимость книг переводиться по текущему курсу в евро. Курс евро следует вводить как параметр
- "Уценка", в котором вычислить с помощью функции IIf() новую стоимость книг после уценки по правилу: книги, изданные до (2005+n) года включительно уцениваются на (10+n)%

6.Создайте, используя Итоги, следующие запросы на выборку в режиме конструктора

6.1. Фамилия_6_1 для отбора информации о количестве читалей по городам

6.2. Фамилия_6_2 для отбора информации о максимальной, минимальной и средней стоимости, а также количестве книг по городам. Каждое итоговое поле должно иметь соответствующее название (например, "Максимальная стоимость", т.п.)

6.3. Фамилия_6_3 для отбора информации о количестве посещений библиотеке по месяцам (2005+n) года

ПРИМЕЧАНИЕ:
Запрос строится на основе таблиц Читатели, Выдачи
Для выделения в дате названия месяца используются функции Month() (по дате возвращает номер месяца),MonthName() (по номеру месяца возвращает его название)

7. Создайте в режиме конструктора перекрестный запрос "Активность издательств" (имя запроса - Фамилия_7), содержащий список всех издательств и количество книг, изданных конкретным издательством по годам, а также общее количество книг, изданных каждым издательством за весь период, и их среднюю стоимость

7.1. Создайте новый запрос в режиме конструктора на основе таблицы Книги с полями Издательство, Год издания и Код книги.

7.2. Измените тип создаваемого запроса на Перекрестный. В результате в бланке запроса дополнительно отобразятся строки Групповая операции и Перекрестная таблица, при этом по умолчанию для всех полей, добавленных в бланк запроса, в строке Групповая операция устанавливается значение Группировка.

7.3. Укажите, что значения поля Издательство будут использоваться в качествезаголовков строк, для этого в строке Перекрестная таблица бланка запроса для поля Издательство выберите из списка Заголовки строк.

7.4. Укажите, что значения поля Год издания будут использоваться в качествезаголовков столбцов, для этого в строке Перекрестная таблица бланка запроса для поля Год издания выберите из списка Заголовки столбцов.

7.5. Укажите, что поле Код книги содержит значения, на основе которых будет вычисляться количество книг:

  • в строке Перекрестная таблица бланка запроса для поля Код книгивыберите из списка Значение
  • в строке Групповая операция бланка запроса для поля Код книги выберите из списка функцию Count.

7.6. Выполните запрос и просмотрите его результаты в режиме таблицы.

7.7. Вернитесь в режим конструктора.

7.8. Добавьте в перекрестный запрос столбец, содержащий общее количество книг, изданных каждым издательством за весь период:

  • еще раз перенесите в бланк запроса поле Код книги;
  • в строке Перекрестная таблица бланка запроса для этого поля выберите из списка Заголовки строк;
  • в строке Групповая операция бланка запроса для этого поля выберите из списка функцию Count;
  • присвойте вычисляемому полю имя Количество изданий, для этого установите текстовый курсор перед именем поля Код книги и введите: Количество изданий:.

7.9. Выполните запрос и просмотрите его результаты в режиме таблицы.

7.10. Аналогично создайте вычисляемое поле "Средняя стоимость изданий"

8.Создайте в режиме конструктора перекрестный запрос "Активность читателей (Фамилия)" (имя запроса - Фамилия_8), содержащий список всех читателей и количество обращений в библиотеку по месяцам, а также общее количество обращений в библиотеку за весь период.

9. Создайте в режиме Конструктора следующие запросы на изменение:

9.1. Запрос на создание таблицы, который бы из таблицы "Книги" сохранял всю информацию о книгах, изданных в Минске и Санкт-Петербурге, а также книгах, название которых начинается на букву №(2*n) в алфавите, в новую таблицу "Фамилия_ИзбранныеКниги". Имя запроса - Фамилия_9_1

9.2. Запрос на удаление, который бы из таблицы "Фамилия_ИзбранныеКниги" удалил всю информацию о книгах, изданных в Санкт-Петербурге в период с 2005 до (2005+n) годы. Имя запроса - Фамилия_9_2

9.3. Запрос на добавление, который бы в таблицу "Фамилия_ИзбранныеКниги" добавил всю информацию о книгах, изданных в Москве начиная с (2005+n) года. Имя запроса - Фамилия_9_3

9.4. Запрос на изменение, который бы в таблице "Фамилия_ИзбранныеКниги" увеличивал в (1+2*n) раз стоимость всех книг, изданных в Минске и Москве (для четных вариантов) или в Минске и Санкт-Петербурге (для нечетных вариантов). Имя запроса - Фамилия_9_4

 

 

 

© sil 2021