MS Access. Работа с данными при помощи запросов

Конструирование запосов в MS Access

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

1.1. Создайте новый запрос в режиме конструктора: кнопка Запросы на панели Объекты окна базы данных / кнопка Создать на панели инструментов окна базы данных / в диалоговом окне Новый запрос выберите Конструктор / ОК (или двойной щелчок мышью по ярлыку Создание запроса в режиме конструктора в окне базы данных)

1. 2. Определите таблицы, необходимые для создания запроса: в диалоговом окне Добавление таблицы щелчком мыши выделите таблицу Книги / кнопка Добавить / кнопка Закрыть.

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

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

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

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

1.7. Сохраните запрос под именем Книги издательства Питер (Фамилия): Файл / Сохранить или соответствующая кномка в поле Имя запроса введите: Книги издательства Питер (Фамилия) / ОК.

1.8. Выполните запрос и просмотрите его результаты в режиме таблицы: Вид / Режим таблицы или откройте список инструмента / выберите Режим таблицы.

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

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

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

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

Название

Город

Издательство

Год издания

Количество страниц

Стоимость

2.2. Читатели с фамилиями от а до к (Фамилия) Читатели

Фамилия

Имя

Отчество

Место работы

Должность

Город

Адрес

Дата рождения

Телефон

E-mail

2.3. Телефоны читателей (Фамилия)

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

Читатели

Фамилия

Имя

Отчество

Место работы

Должность

Город

Адрес

Дата рождения

Телефон

E-mail

2.4. Читатели за 1 квартал 2006 года(Фамилия)

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

Читатели

Фамилия

Имя

Отчество

Место работы

Должность

Телефон

Выдачи Дата выдачи
2.5. Книги, изданные в Санкт-Петербурге и Москве в 2006 году (Фамилия) Книги

Название

Город

Издательство

Год издания

Количество страниц

Стоимость

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

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

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

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

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

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

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

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

3.7. Сохраните запрос под именем Выбор книг по году издания (Фамилия).

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

Издательство

Итого

2004

2005

2006

БХВ-Санкт-Петербург

1

 

1

 

Вильямc

1

 

 

1

Новое знание

1

1

 

 

Питер

3

 

2

1

Символ-Плюс

1

 

1

 

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

4.2. Определите тип создаваемого запроса: Запрос / Перекрестный (в бланке запроса дополнительно отобразятся строки Групповая операции и Перекрестная таблица. По умолчанию для всех полей, добавленных в бланк запроса, в строке Групповая операция устанавливается значение Группировка).

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

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

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

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

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

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

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

4.10. Сохраните запрос под именем Активность издательств (Фамилия) и закройте его.