Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР_БД_все.doc
Скачиваний:
15
Добавлен:
16.08.2019
Размер:
5.66 Mб
Скачать

Контрольные вопросы:

  1. Какие виды форм существуют в СУБД Access?

  2. Какие элементы редактирования формы в режиме конструктора вы знаете?

  3. Для чего используется Поле со списком в формах в СУБД Access?

  4. Опишите процесс создания функциональных кнопок Access в режиме конструктора форм в СУБД Access.

Лабораторная работа № 3. Создание запросов в базе данных субд ms access. Запрос выборка, запрос с параметрами.

Цель: научиться строить запросы на выборку данных в базе данных СУБД Access.

Рекомендации к выполнению

Запросы в СУБД Access являются одним из основных инструментов выборки записей, обновления таблиц и обработки данных в таблицах базы данных. Результат выполнения запроса – это новая, временная таблица, существующая до закрытия запроса. Структура временной таблицы определяется выбранными полями из одной или нескольких таблиц. Записи временной таблицы формируются на основе объединенных записей из таблиц, участвующих в запросе. Способ объединения записей различных таблиц указывается при определении их связи. Условия отбора, сформулированные в запросе, позволяют фильтровать записи, составляющие результат выполнения любого запроса.

Запросы строятся на основе одной или нескольких объединенных таблиц. При этом могут использоваться как таблицы базы данных, так и сохраненные таблицы, полученные в результате выполнения других запросов. Также запрос может создаваться непосредственно на основе другого запроса с использованием его временной таблицы с результатами.

СУБД Access позволяет создавать и обрабатывать 2-а типа запросов:

1. Запросы, созданные с помощью языка SQL. SQL (Structure Query Language) - язык структурированных запросов предназначен для работы с данными в реляционных базах данных.

2. Запросы по образцу QBE (Query by Example) (схема 1)

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

Запросы в СУБД Access могут быть созданы с помощью Мастера создания запросов и в режиме конструктора.

Запрос с параметрами является одним из подтипов Запроса на выборку. Основные принципы создания Запроса с параметрами (параметрического запроса) аналогичны принципам разработки Запроса на выборку. Таким образом, при задании условий отбора можно не только в Бланке запроса указать конкретное значение требуемого поля, но и вводить его в диалоговом режиме в процессе выполнения запроса. Конкретное вводимое значение поля в диалоговом режиме в процессе выполнения запроса называют параметром запроса, а запрос предоставляющего пользователю возможность вводить параметр отбора записей – Запрос с параметром (параметрический запрос)

ОПРЕДЕЛЕНИ ПАРАМЕТРА ДЛЯ ЗНАЧЕНИЯ ПОЛЯ. Имя параметра запроса задается непосредственно в поле Условие отбора в квадратных скобках. При выполнении запроса данное имя параметра появится в диалоговом окне Введите значение параметра.

Задания

Задание 1. Создайте запрос на выборку названий книг зарубежных авторов, количество книг и их стоимость. Прежде чем выполнять задание, необходимо ввести в таблицу «Книги» два новых поля «Количество книг» и «Цена».

В таблицы «Авторы» и «Книги» следующие данные:

  • Владимир Маяковский, в Заметках «Советский поэт», тип автора - «поэт», Сборник стихов, 2003;

  • Афанасий Фет, в Заметках «Русский поэт», тип автора – «поэт», Сборник стихов о весне, 2004.

Заполнение данных осуществлять посредство ввода данных в форму «Авторы».

Технология выполнения задания.

  1. В режиме конструктора таблицы добавьте новые поля «Количество книг» и «Цена» в таблицу «Книги». Тип данных полей «Количество книг» и «Цена» - числовой. В Общих свойствах поля «Цена» выберите Формат поля «Денежный» в рублях.

  2. В режиме конструктора формы добавьте в форму «Авторы» в области подчиненной формы «Книги» новые поля «Количество книг» и «Цена». Для этого на панели элементов формы выберите кнопку - Поле. Методом перетаскивания установите данный элемент в Области данных подчиненной формы «Книги». С помощью контекстного меню выберите Свойства поля и заполните Свойства Данные следующим образом (рис.13) и Свойства Подпись надписи данного поля (рис.14)

Рис. 13 Окно Свойств поля «Количество книг»

Рис. 14 Окно Свойств надписи поля «Количество книг»

Аналогичным способом добавьте в Область данных подчиненной формы «Книги» еще один элемент Поле с надписью. Установите следующие свойства данного поля (рис.15) и его надписи (рис.16)

Рис. 15 Окно Свойств поля «Цена»

Рис. 16 Окно Свойств надписи поля «Цена»

  1. В режиме открытия формы «Авторы» добавьте новые записи и данные. В результате таблицы «Авторы» и «Книги» будут содержать следующие данные (рис.17) и (рис.18)

Рис. 17 Таблица «Авторы»

Рис. 18 Таблица «Книги»

  1. Выберите в окне базы данных закладку Запрос. Нажмите кнопку Создать и выберите режим Конструктор.

  2. Выберите исходные таблицы для запроса: «Авторы» и «Книги».

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

  4. В нижней части окна размещается Бланк запроса, который представляет собой макет таблицы, столбцами которой являются поля создаваемого запроса.

  5. В строке Поле укажите имена столбцов (полей) создаваемого запроса. Существующее имя можно выбрать из раскрывающегося списка, щелкнув мышью на поле, или просто перенести в ячейку Поле методом Drag-and-Drop из таблицы в верхней части запроса.

  6. В первый столбец перенесите «Название книги» из таблицы «Книги», а во второй столбец «Количество» из этой же таблицы, в строке Имя таблицы появятся названия таблицы «Книги», при условии, что установлен флажок Имена таблиц, находящийся в меню Вид. В строке Условия отбора для поля «Название книги», используя Построитель выражений, прописываем выражение (рис.19)

Рис. 19 Окно Построителя выражений для определения Условия отбора данных поля Название книги

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

В результате получим-Выражение1:[Книги]![Количество книг]*[Книги]![Цена]. Слово Выражение1 заменим на - Стоимость, для этого выделяем данное слово Выражение 1 и прописываем Стоимость.

  1. Закройте окно Конструктора запроса, присвойте имя «Запрос на выборку книг по типу автора».

  2. Откройте Запрос на выборку книг по типу автора в режиме выполнения запроса, выделив данный запрос на вкладке Запросы и нажав кнопку Открыть. Результат выполнения запроса представлен на рис.20.

Рис. 20Окно результата выполнения Запроса на выборку книг по типу автора

  1. Закройте окно запроса.

  2. Откройте окно запроса в режиме Конструктора и выберите сортировку данных поля «Стоимость» по убыванию.

  3. Просмотрите результаты Запроса на выборку книг по типу автора отсортированные по полю «Стоимость».

Задание 2. Создайте запрос на выборку фамилий и имен авторов с названием их книг, у которых количество книг хранимых в базе данных больше 10. Список фамилия авторов и их книг отсортировать по алфавиту.

Технология выполнения задания.

  1. Выполните пункты 4-8 из технологии выполнения предыдущего задания.

  2. В первый столбец перенесите «Фамилия» из таблицы «Авторы», а во второй столбец «Имя» из этой же таблицы, в строке Имя таблицы появятся названия таблицы «Авторы», при условии, что установлен флажок Имена таблиц, находящийся в меню Вид. В строке Условия отбора для поля «Фамилия», используя Построитель выражений, прописываем выражение (рис.21)

Рис. 21. Окно Построителя выражений для определения Условия отбора данных поля Фамилия

  1. Отсортируйте данные поля «Фамилия» по алфавиту (по возрастанию).

  2. Закройте окно Конструктора запроса, присвойте имя «Запрос на выборку авторов».

  3. Просмотрите результаты запроса на выборку авторов отсортированные по полю «Фамилия» (рис.22).

Рис. 22 Окно результатов выполнения Запроса на выборку авторов

Задание 3. Создайте запрос с параметрами на выборку Названия книги с именами авторов, параметром отбора будет являться Год издания книги.

Технология выполнения задания.

  1. Откройте запрос-выборку в режиме Конструктора. Для этого нажмите кнопку Создать в окне базы данных Access на вкладке Запросы, затем выберите режим Конструктора.

  2. Добавьте в Схему данных запроса таблицы «Авторы» и «Книги».

  3. В Бланке запроса в первом столбце выберите поле Фамилия из таблицы «Авторы», во втором – Имя из той же таблицы, а в третий – Название книги из таблицы «Книги».

  4. В качестве четвертого столбца вставьте поле Год издания из таблицы «Книги».

  5. «Погасите» флажок выдачи этого столбца на экран, а в поле Условие отбора пропишите текст-приглашение (параметр) в квадратных скобках: [Введите год издания книги] - квадратные скобки необходимы (синтаксис СУБД Access. Скобки необходимы, т.к. в идентификаторе параметра содержатся пробелы).

  6. Сохраните запрос под именем Запрос с параметром Год издания на выборку книг.

  7. Откройте данный запрос в окне базы данных, на экране появится диалоговое окно с приглашением: «Введите год издания книги». В окне запроса параметра необходимо ввести год издания книги, например, 2000. Запрос с параметрами выведет Названия книг и имена их авторов только тех книг, которые были изданы в 2000 году.

Задание 2. Аналогично создайте запрос с параметрами для вывода Названия книги с именами авторов, параметрами отбора будут являться поля Тип автора и Цена.

Технология выполнения задания.

  1. Выполните пункты 1-3 из технологии выполнения задания 1.

  2. В четвертом столбце Бланка запроса пропишите поле Тип автора из таблицы «Авторы», в строке условия отбора установите условие - [Введите тип автора].

  3. В следующем столбце выберите поле Цена из таблицы «Книги», в строке условия отбора пропишите параметр - < [Цена книги].

  4. Сохраните созданный запрос под именем Запрос с параметрами Тип автора и Цена на выборку книг.

  5. Проверьте правильность выполнения запроса. Для этого запустите запрос на выполнение, предварительно его выделите в окне базы данных Access на вкладке Запросы и нажав кнопу Открыть. Затем в появившемся диалоговом окне параметра впишите параметр - писатель, далее в следующем окне параметр цена- 26. Если запрос построен правильно, результат будет следующим (рис.23)

Рис. 23. Окно результата выполнения Запроса с параметром Тип автора и Цена на выборку книг