- •Содержание
- •5.1 Вопросы для самопроверки. 91
- •6.4 Контрольные вопросы 97
- •7.2 Контрольные вопросы: 102
- •Лабораторная работа № 1. Построение информационно - логической модели «Поставка товаров»
- •1.1Изучение предметной области
- •1.1.1Общие сведения
- •1.1.2Описание предметной области «Склад»
- •1.1.3Список вопросов, на которые должна отвечать информационная система
- •1.1.4Описание первичных документов
- •1.2Определение логической структуры данных
- •1.2.1Объекты справочной и учетной информации
- •1.2.2 Выявление функциональной зависимости
- •1.2.3Требования нормализации
- •1.3Построение связей информационных объектов
- •1.3.1Тип связи информационных объектов
- •1.3.2Определение связей предметной области Склад
- •1.4Построение информационно-логической модели базы данных.
- •1.4.1Матрица смежности илм
- •1.4.2Логическая модель предметной области
- •1.4.3Логическая структура реляционной базы данных
- •1.5Самостоятельная работа
- •1.6Контрольные вопросы:
- •Лабораторная работа № 2.- введение в субд access
- •2.1Создание базы данных
- •2.2Создание таблиц базы данных
- •2.3Создание таблицы товар
- •2.4Создание маски ввода
- •2.5Создание домена
- •2.6Ввод данных в бд "Склад" таблицу товар
- •2.7Использование данных типа Поле объекта ole.
- •2.8Самостоятельная работа
- •Контрольные вопросы
- •Лабораторная работа № 3. Поля со списком, схема данных
- •3.1Использование поля со списком при вводе записей.
- •3.2Использование поля со списком ключевым столбцом.
- •3.3Создание схемы базы данных "Склад".
- •3.4Создание связей между таблицами схемы данных
- •3.5Обеспечение целостности данных
- •3.6Каскадное обновление и удаление связанных записей
- •3.7Проверка поддержания целостности в базе данных
- •3.8Самостоятельная работа
- •3.9Контрольные вопросы
- •Запросы
- •Назначение и виды запросов
- •Конструирование запросов
- •Вычисляемые поля.
- •Использование групповых операций в запросах
- •Запрос с функцией Count
- •Самостоятельная работа
- •Организация запросов на выборку с использованием языка sql
- •Синтаксис оператора select
- •Простейшие запросы Запросы на выборку столбцов
- •Запрос на выборку с упорядочиванием всех полей.
- •Простейшие запросы с условием
- •Групповые функции и агрегирование
- •Подзапрос
- •Вложенный подзапрос
- •Связный подзапрос
- •Самостоятельная работа
- •Вопросы для самопроверки
- •Многотабличные запросы
- •Многотабличный запрос
- •Формирование записей результата при выполнении запроса
- •Параметрические запросы
- •Ссылки на имена полей различных таблиц в условии отбора
- •Решение задач на основе нескольких запросов
- •3.10Самостоятельная работа
- •Контрольные вопросы по запросам на выборку
- •Диалоговый графический интерфейс для работы с базой данных через формы
- •3.11Создание форм с использованием мастера форм
- •3.11.1Однотабличные формы
- •Разработка многотабличной формы
- •Режим конструктора для создания и корректировки форм
- •Вставка в форму элемента ActiveX
- •Извлечение данных из списка в несвязный элемент управления
- •Создание формы с автоматическим подбором кодов товара соответствующего указанному договору
- •Вычисляемые поля формы Вычисляемое поле
- •Вычисление итоговых значений
- •Задание для самостоятельной работы
- •Вопросы для самопроверки.
- •Разработка отчетов
- •Создание отчетов в режиме мастера Однотабличные отчеты
- •Многотабличные отчеты
- •Создание и корректировка отчетов в режиме конструктора Корректировка отчета в режиме конструктора
- •Определение параметров в отчете
- •Задания для самостоятельной работы
- •Отгрузка товара
- •Контрольные вопросы
- •Интерфейс приложений
- •Создание кнопочной формы
- •Контрольные вопросы:
- •Список литературы
Использование групповых операций в запросах
Групповые операции позволяют выделить группы записей с одинаковыми значениями в указанных полях и использовать для этих групп одну из агрегатных функций. В Access предусматривается девять статистических функций:
Sum — сумма значений некоторого поля для группы;
Avg — среднее от всех значений поля в группе;
Mах, Min — максимальное, минимальное значение поля в группе;
Count — число значений поля в группе без учета пустых значений;
StDev — среднеквадратичное отклонение от среднего значения поля в группе;
Var — дисперсия значений поля в группе;
First и Last — значение поля из первой или последней записи в группе.
Результат запроса будет, содержать по одной записи для каждой группы.
Пример: Определим, какое суммарное количество каждого товара должно быть поставлено покупателям по договорам.
Откроем
мастер запроса выберем таблицу
поставка_план;
выберем
поле код_тов
и поле
кол_пост
, нажмем
(Рисунок 6.10.); Нажмем Далее
в следующем окне подключим
подробный
(Рисунок 6.11.) и нажать кнопку Далее;
В строке «Задайте имя запроса» впишите
- Заказано
товаров и
нажмите
Готово (Рисунок
6.12);
Рисунок 6.10. Мастер создания запросов для таблицы поставка_план
Рисунок 6.11. Мастер создания запросов для таблицы поставка_план
Рисунок 6.12. Мастер создания запросов для таблицы поставка_план
После
создания запроса в мастере откорректируем
его в конструкторе, для этого нажмем
кнопку
на панели инструментов; подключим
Групповые
операции
и заменим слово группировка в столбце
кол_пост
на функцию Sum.
выбрав ее из списка. Бланк запроса примет
вид, показанный на рисунке 6.13. Нажмем
.
получим таблицу представленную на
рисунке 6.14.
Рисунок 6.13. Запрос с группировкой по коду
Рисунок 6.14. Результат подсчета суммарного количества товаров
Подпись поля Sum - кол_пост можно - заменить на Заказано товаров. В режим конструктора , в бланке запроса установим курсор мыши на поле кол_пост и нажмем правую кнопку. В контекстном меню выберем Свойства. В окне Свойства поля наберем в строке Подпись — Заказано товаров. Таблица результата после доработки запроса показана на Рисунок 6.15.
Рисунок 6.15. Таблица результата с измененной подписью поля
Сохраним запрос-выборку под именем "Заказано товаров".
Запрос с функцией Count
Определим, сколько раз отгружался товар по каждому из договоров. Факт отгрузки фиксируется документом "Накладная".
Из списка таблицы накладная перетащим в бланк запроса поле ном_дог. По этому полю должна производиться группировка. По сути, смысл задачи сводится к подсчету в таблице числа строк с одинаковым номером договора, поэтому неважно, по какому полю будет вычисляться функция Count. Перетащим в бланк запроса любое поле, например, опять ном_дог.
Откроем Вид-Групповые операции . Заменим слово группировка в одном из столбцов с именем ном_дог на функцию Count. Бланк запроса, показанный на Рисунок 6.16. Сохраним запрос под именем "Число отгрузок по договорам".
Рисунок 6.16. Запрос для подсчета числа отгрузок по договорам
