- •Лабораторный практикум
- •По дисциплине «информатика»
- •Часть 3
- •Субд ms Access
- •Часть 3. Субд ms Access
- •Лабораторная работа 1. Введение в субд Access. Создание базы данных
- •Запросы
- •Мастера Access
- •Контроль достоверности данных
- •Предусмотреть ограничения на значения полей Количество детей и Оклад, маску ввода для поля фио, подстановку из списка (м, ж) для поля Пол.
- •Лабораторная работа 2. Выборка данных в субд Access
- •Запросы на выборку
- •Запросы с параметрами
- •Вычисления в запросах
- •Стоимостьпартии:[количество_товара]*[Товар]![стоимость_единицы_ товара].
- •Запросы с групповыми операциями
- •Задание
- •Лабораторная работа 3. Создание форм
- •Конструктор форм
- •Оформление
- •Доступ к данным таблиц
- •Лабораторная работа № 4. Создание отчетов
- •Задание
- •Лабораторная работа 5. Создание кнопочных форм
Запросы с параметрами
В таких запросах ввод условий отбора производится пользователем при каждом запуске запроса. Для организации запроса с параметрами необходимо в строке Условие отбора вместо самого условия в квадратных скобках ввести текст приглашения на его ввод:
[<текст приглашения>].
При запуске запроса с параметрами появляется диалоговое окно (рис. 4), в котором пользователь должен ввести условие отбора и нажать кнопку ОК.
Рис. 4
Вычисления в запросах
В запросе можно предусмотреть вычисления, что позволяет получить дополнительную информацию в процессе выборки, например, стоимость всей партии товара при хранимой в таблице информации о количестве товара и стоимости единицы. Для этого в строку Поле пустого столбца заносят выражение для вычисления по следующему формату:
<Название формируемого поля>:<выражение>
В <выражении> можно использовать знаки арифметических операций, круглые скобки и имена полей в []. Например, стоимость партии можно вычислить по выражению:
Стоимость партии:[количество товара]*[стоимость единицы товара].
Если при вычислениях необходимо использовать данные из другой таблицы, то её имя указывается в префиксе, который отделяется от имени поля знаком !, например:
Стоимостьпартии:[количество_товара]*[Товар]![стоимость_единицы_ товара].
В этой формуле [Товар] – имя таблицы.
В случае сложного выражения можно вызвать построитель выражений щелчком на кнопке .
Для просмотра результатов запроса необходимо вызвать команду ЗАПРОС, ЗАПУСК или щёлкнуть на кнопке ЗАПУСК на панели инструментов. Результаты появятся в окне, похожем на таблицу.
Запросы с групповыми операциями
В СУБД Access существует возможность задать запросы с групповыми операциями, что позволяет находить интегральные показатели для групп записей в таблице. Каждая такая группа характеризуется одинаковым значением по какому-то полю, например, одинаковым названием отдела или семейным положением. Для перехода в данный режим запросов необходимо в панели инструментов нажать кнопку ГРУППОВЫЕ ОПЕРАЦИИ , что приведет к появлению в бланке запроса новой второй строки с одноименным названием. В ячейках данной строки указывается или режим группировки по некоторому полю (опция Группировка), или название групповой операции:
-
Sum - сумма значений;
-
Avg - среднее значение по данному полю для всей группы;
-
Count - число записей в данной группе;
-
Max - максимальное значение поля в каждой группе;
-
Min - минимальное значение поля в каждой группе;
-
First - первое значение данного поля в каждой группе;
-
Last - последнее значение данного поля в каждой группе и др.
При выполнении запроса СУБД разбивает таблицу на группы, число которых равно числу существующих значений в группируемом поле, и реализует для каждой группы требуемую операцию, т.е. число строк в выборке равно числу групп.
Задание
1. В таблице СЛУЖАЩИЙ своей базы данных осуществить следующие виды фильтрации:
-
- выбор служащих одного отдела;
-
- выбор служащих, название должности которых заканчивается на букву "т";
-
- выбор служащих, фамилия которых начинается на букву "В";
-
- выбор всех служащих, кроме одного отдела;
-
- выбор служащих по двум должностям;
-
- выбор служащих-женщин одного отдела.
-
2. Для таблицы СЛУЖАЩИЙ своей базы данных сформировать, проверить корректность и сохранить следующие запросы:
-
Отображающий в выборке поля:
- ФИО;
- дата_рождения;
- отдел;
- оклад.
-
Отображающий в выборке все поля таблицы для работников одного отдела. Сделать данный запрос параметризованным;
-
Отображающий в выборке поля:
- ФИО;
- отдел;
- количество детей,
для семейных сотрудников, фамилии которых начинаются на буквы от "Г" до "Ш";
-
Отображающий в выборке поля:
- ФИО;
- должность;
- оклад,
для холостых сотрудников с окладом больше 1000 руб.
-
Рассчитывающий для каждого сотрудника налог в виде выражения (13% от оклада).
В выборке выводятся:
ФИО;
отдел;
оклад;
налог.
Предусмотреть суммирование полей оклад и налог для каждого отдела.