Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ГОС_по_БД_1012.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
397.31 Кб
Скачать

Вопрос 7. Вычисляемые поля, статистические функции групповых операций

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

При вычислениях могут использоваться арифметические выражения и встроенные функции Access.

Арифметические выражения. Выражения вводятся в бланк запроса в пустую ячейку строки Поле. Затем после нажатия клавиши <Enter> или перевода курсора в другую ячейку перед выражением в этой ячейке добавляется имя поля Выражение N , где N целое число, увеличивающееся на единицу для каждого нового создаваемого вычисляемого поля в запросе. Имя вычисляемого поля, стоящее перед выражением, отделяется от него двоеточием, например:

<Выражение1>:[Цена]*[Кол],

где Цена и Кол – имена полей.

Для вычисляемых полей допускается сортировка, задание условия отбора и расчет итоговых значений, как и для любых других полей.

Встроенные функции. В Access имеются встроенные функции, которые можно использовать в вычисляемых полях:

  • Функция Date возвращает текущую дату;

  • Функция Month выделяет месяц из значения поля, содержащего дату;

  • Статистические функции групповых операций.

Групповые операции позволяют выделить группы записей с одинаковыми значениями в указанных полях и использовать для этих групп одну из статистических функций. В Access предусмотрено девять статистических функций:

    • Sum – сумма значений некоторого поля для группы;

    • Avg – среднее от всех значений поля в группе;

    • Max, Min – максимальное, минимальное значение поля в группе;

    • Count – число значений поля в группе без учета пустых значений;

    • Stdev – среднеквадратичное отклонение от среднего значения поля в группе;

    • Var – дисперсия значений поля в группе;

    • First, Last - значение поля из первой, последней записи в группе.

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

Для этого нужно выполнить команду ВидГрупповые операции или на панели инструментов конструктора запросов нажать кнопку Групповые операции. Можно также нажать правую кнопку мыши на бланке запроса и выбрать в контекстном меню опцию Групповые операции. В бланке запроса появится строка Групповая операция, в которой для всех полей записано Группировка. Для групповых вычислений по некоторому полю нужно заменить в нем слово Группировка на нужную статистическую функцию. Выбрать нужную функцию можно через раскрывающийся в поле список. Результат выполнения функции выводится в запросе в поле с заголовком <Имя функции>_<имя поля>, который можно изменить. Для этого в бланке запроса установить курсор на имени поля и нажать правую кнопку. В контекстном меню выбрать команду Свойства. В окне Свойства поля набрать в строке Подпись нужный заголовок.

Вопрос 8 Конструирование многотабличных форм

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

Многотабличная форма может не иметь включаемых форм. В этом случае в форму кроме полей таблицы, на основе которой она строится, добавляются поля из связанной таблицы.

Средствами конструктора форм можно создавать многотабличные формы.. При создании формы можно создавать новые элементы, кнопки, добавлять подчиненные формы.

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

Использование запроса в качестве источника записей многотабличной формы

Выбрать в окне Новая форма режим Конструктор.

Открыть таблицу свойств формы (двойным щелчком на области выделения формы- черный квадратик в левом верхнем углу формы) и построитель на вкладке Данные нажатием кнопки , появляющейся при установке курсора за строкой Источник записей. Одновременно появляются окно построителя запросов и диалоговое окно Добавление таблицы.

В окне Добавление таблицы выбрать таблицы, которые отобразятся в схеме данных запроса.

В бланк запроса перенести из таблиц поля, которые должны быть отображены в форме.

Закрыть окно построителя запроса.

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

Включение подчиненной формы средствами конструктора.

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

Основные этапы:

Создать однотабличную форму, источником записей которой выбрать главную таблицу.

Для встраивания подчиненной формы в режиме конструктора нажать на панели элементов кнопку Подчиненная форма/Отчет . Кнопка панели элементов мастера при этом не должна быть включена.

Установить курсор на место размещения создаваемого элемента в форме, нажать кнопку мыши и, не отпуская ее, растянуть рамку подчиненной формы до нужного размера.

Рамка подчиненной формы внутри основной

Установить связь созданного элемента с ранее созданной формой. Для этого нужно выделить внедренный объект и выполнить команду меню Вид/Свойства или нажать правую кнопку мыши и в контекстном меню выбрать Свойства.

В окне свойств Подчиненная форма/Отчет выбрать вкладку Данные.

Рис.VII.13. Окно свойств Подчиненная форма/Отчет

В строке Объект/Источник выбрать из списка имен форм, существующих в базе данных, нужную, которая будет подчиненной. После этого в рамке подчиненной формы отобразится выбранная форма в режиме конструктора. Связь между основной и подчиненной формами устанавливается автоматически, если ранее в схеме данных БД была определена связь таблиц, соответствующих формам.