
- •Системы управления базами данных microsoft
- •Введение
- •1. Работа с бд и таблицами
- •1.1. Создание бд
- •1.2. Создание таблиц
- •1.3. Структура таблиц бд Образование
- •1.4. Схема данных в бд
- •1.5. Сортировка данных
- •1.6. Поиск и замена данных
- •1.7. Фильтрация данных
- •2. Использование запросов
- •2.1. Создание запроса в режиме конструктора
- •2.2. Вычисляемые поля
- •2.3. Групповые операции
- •3. Работа с формами
- •3.1. Виды форм
- •3.2. Создание формы
- •4. Передача объектов в Access из других приложений
- •4.1. Передача ole-объектов с использованием буфера обмена
- •4.2. Передаче ole-объектов без использования буфера обмена
- •4.3. Просмотр графических объектов
2.3. Групповые операции
При обработке данных в таблицах зачастую бывает необходимо учитывать в запросах не отдельные записи, а итоги, которые вычисляются определенным образом для различных групп записей в таблице. Например, необходимо выполнить запрос, в котором для каждого студента было бы подсчитано количество полученных им оценок, а также вычислен средний балл. Для этих целей в Access существуют так называемые итоговые функции, основные из которых имеют вид:
Sum – суммирование значений в группе;
Avg – среднее значение для группы;
Min – минимальное значение для группы;
Max – Максимальное значение для группы;
Count – подсчет числа значений в группе;
First – значение поля в первой записи группы;
Last – значение поля в последней записи.
Чтобы вычислить для каждого студента его средний бал и количество полученных им оценок, необходимо создать новый запрос в режиме конструктора, добавить в него таблицы Студенты и Успеваемость, и затем воспользоваться кнопкой Групповые операции. После этого среди параметров запроса появится строка Групповые операции. Затем нужно заполнить окно конструктора запроса так, как показано на рис. 18.
Рис. 18. Конструктор запроса с групповыми операциями
После этого остаётся только запустить запрос на выполнение.
3. Работа с формами
3.1. Виды форм
В Access имеются широкие возможности по созданию интерфейса пользователя при помощи форм. Создавая форму в БД, разработчик может преследовать, в частности, следующие цели:
Отображение и изменение данных. Наиболее часто формы создаются именно для вывода и изменения данных в БД. При этом разработчик может задать любой вид отображения информации, т. е. произвольный набор полей из одной или нескольких таблиц или запросов (если поля находятся в разных таблицах, то между этими таблицами должна быть связь).
Ввод данных. Формы могут использоваться для ввода новых данных в таблицу, при этом пользователь может вводить значения только для тех полей, которые представлены в форме.
Существует несколько основных видов форм:
Форма в столбец. Поля записи выводятся в один столбец, при этом в один и тот же момент времени в форме отображается содержимое только текущей записи. На рис. 19 представлена форма Студенты, в которой отображены данные из таблицы Студенты.
Рис. 19. Форма в столбец
Ленточная форма. Все поля записи выводятся в одну строку, при этом в форме отображаются все записи. В ленточной форме Студенты, представленной на рис. 20, отображены все записи из таблицы Студенты.
Рис. 20. Ленточная форма
Табличная форма. Отображение записей осуществляется в режиме таблицы. На рис. 21 представлена табличная форма Студенты.
Рис.21. Табличная форма
Подчиненная форма. Используется при необходимости вывода данных, связанных отношением "один-ко-многим', при этом в подчиненной форме отображаются записи из таблицы, которая соответствует слову "многим". В форме Оценки Студентов (см. ниже рис.22), кроме данных из таблицы Студенты, имеется также подчиненная форма, в которой отображаются данные из таблицы Успеваемость. Необходимо обратить внимание на тот факт, что в этой форме выводятся названия предметов, в то время как в таблице Успеваемость, которая служит источником данных для подчиненной формы, имеются только коды предметов. Подобный эффект достигается с помощью так называемого мастера подстановок.
Рис. 22. Подчиненная форма