- •Реализация баз данных в msaccess
- •Содержание
- •Введение
- •Основные понятия бд. Запись, поле, атрибут, первичный ключ, кодирование.
- •Многотабличная база. Разбиение, типы связей.
- •Работа с реляционными базами. Нормализация.
- •IV.1. Первая нормальная форма (1нф)
- •IV.2. Вторая нормальная форма (2нф)
- •IV.3. Третья нормальная форма (3нф)
- •IV.4. Нормальная форма Бойса-Кодда (бкнф)
- •IV.5. Четвертая нормальная форма (4нф)
- •Стадии проектирования базы данных для реализации в сурбд ms access
- •Реализация. Структура главного окна ms access
- •Несколько баз данных одновременно открыть нельзя!
- •Связывание таблиц
- •Создание и удаление связей между открытыми таблицами не допускается.
- •Корректировка структуры таблицы
- •Режим заполнения таблицы. Ввод и редактирование записей
- •Первой заполняется главная таблица !
- •Не редактируются поля типа Счетчик, вычисляемые и блокированные поля.
- •Построение форм
- •Поиск и замена данных, установка фильтров, сортировка
- •XI .1. Поиск данных по одному полю
- •XI .2. Поиск и замена данных
- •XI .3. Поиск данных с помощью фильтра
- •XI .4. Сортировка
- •Создание запросов
- •XII.1 Создание простого запроса
- •Создание запросов по критериям
- •XIII.1. Запрос по критерию точного совпадения (точного несовпадения)
- •XIII.2. Запрос по нескольким критериям
- •XIII.3. Запрос с параметром
- •XIII.4. Вычисляемые поля в запросах
- •Результаты вычислений нельзя редактировать!
- •XIII.5. Выражения для даты и времени
- •XIII.6. Использование условий выбора при вычислениях
- •Итоговые запросы. Групповые операции
- •XIV.1. Вычисление суммы величин
- •XIV.2. Вычисление процентов
- •XIV.3. Вычисление максимального и минимального значений поля
- •Запросы действия (модифицирующие запросы)
- •XV.1. Запросы удаления
- •Создание архивной таблицы
- •XV.2. Запросы добавления
- •XV.3. Запросы обновления
- •Отчеты по запросам
- •Создание отчета по практике
- •Литература
XIII.5. Выражения для даты и времени
Для работы с датами используются специальные функции:
Date ( ) – текущая дата.
Now ( ) – текущее время.
Например: В поле, содержащем срок поставки («Дата_поступления»), при выражении < Date ( ) будут отобраны записи, в которых срок поставки определен до сегодняшнего числа (на каждый момент запуска будет ставится текущая дата).
Date Diff (интервал, дата 1, дата 2) разница между двумя датами, если интервал:
«YYYY» - в годах
«q» - кварталах
«m» - месяцах
«d» - днях
«WW» - часах
«n» - минутах
«S» - секундах
Date Add (интервал, число, дата)
Определение даты, относящейся к будущему. Число – количество прибавляемых интервалов.
Пример: Date Add («d», 10, 10.04.03) прибавит 10 дней к указанной дате и получим 20.04.03
XIII.6. Использование условий выбора при вычислениях
В некоторых случаях формула, по которой выполняются вычисления над полями исходной таблицы, может зависеть от значения данных в этих полях. В поле ставится условие отбора записей и только для них будут выполняться вычисления.
Пример: На партию товара свыше 20 шт. дается скидка 5%. Создаем 2 запроса: (до 20 шт. и > 20 шт.)
Запрос 1:
Запросы – Создать – Конструктор
Добавить таблицу «Детали»
Добавим поля «Узел_авто», «Марка_авто», «Количество»
В поле «Количество» ставим условие отбора > 20
Вводим вычисляемое поле «Стоим_заказа», в котором :
[Количество]* [Закупочная_цена]* 0,95
Выполним запрос и сохраним его с именем «Заказ >20»
-
Заказ >20
Узел_авто
Марка_авто
Количество
Стоим_заказа
кузов
ВАЗ_02
25
116375
лобовое стекло
BMW
27
128250
двигатель
ВАЗ_091
200
950000
Итоговые запросы. Групповые операции
Итоговыми называются запросы, выполняющие вычисления в группах записей. К ним относятся:
SUM – суммирование;
AVG – среднее значение;
MIN – минимальное значение;
MAX – максимальное значение;
COUNT – количество записей, содержащих значения (пропускаются пустые);
ST DEV – стандартные отклонения;
VAR – дисперсия;
FIRST – значение в первой записи;
LAST – значение в последней записи.
XIV.1. Вычисление суммы величин
Требуется создать запрос, суммирующий величины по всей таблице или группе записей. В запросе нельзя вывести одновременно значения для каждой записи и их суммарную величину. Чтобы это выполнить, следует сформировать отчёт.
Пример XIX.1.1. Запрос на общее количество всех деталей на складе.
Поле Количество, групповые операции SUM
Запросы → Создание запроса в режиме конструктора
Добавление таблицы → «Детали»
Выбрать поле Количество (Двойной щелчок по полю)
Щелчок правой клавишей по полю →Групповые операции → выбираем SUM
Выполним запрос. Получили .
SUM_Количество |
303 |
Для нахождения суммы значений поля только тех записей, которые отвечают некоторым условиям:
В требуемых полях поставим условия отбора.
Вставим в бланк запроса вычисляемое поле.
Сбросим флажки Вывод на экран для всех полей, кроме вычисляемого.
В вычисляемом поле Групповая операция→ SUM.
Пример XIX.1.2.
Просуммировать количество двигателей на складе.
Начальные действия выполняются аналогично предыдущему примеру.
В поле Узел_авто укажем Like двигатель* (т.к. не уточняем марку автомобиля)
Добавим вычисляемое поле Количество двигателей: поле Количество: SUM.
Получим: 205.
Для вычисления суммы в группах величин:
Вставим в запрос поле, в котором осуществляется группировка.
В отдельный столбец - вычисляемое поле для отображения суммы.
В ячейке Групповая операция этого поля – SUM.
Для группируемых полей в ячейке Групповая операция --> Группировка.
Такой запрос не отображает конкретные значения отдельных записей.
Пример XIX.1.3.
Получить количество товаров каждого вида.
Начальные действия выполняются аналогично примеру XIX.1.1.
В запрос поместим поле Наименование.
В ячейке Групповая операция: Группировка.