Разработка ER-модели предметной области
Моделирование данных – это первый шаг на пути проектирования БД, это переход от объектов реального мира к компьютерной модели БД.
ER-модель служит для объединения различных представлений данных на концептуальном уровне.
Рисунок ER-модели
Структура записей таблиц
«Материал»
№п/п | Идентификатор | Тип данных | Размер данных | |||
1 2 | KOD MATERIALA NAIMENOVANIE MATER
| INT CHAR
| 3 50 | |||
«Оборудование» | ||||||
№п/п | Идентификатор | Тип данных | Размер данных | |||
1 2 3 | INVENTARNII NOMER NAIMENOVANIE OBORUD HARAKTERISTIKI | INT CHAR CHAR | 5 50 200 | |||
«Операция»
№п/п | Идентификатор | Тип данных | Размер данных |
1 2 3 4 5 | NOMER PODPYNKTA NAIMENOVANIE OPER KOD MATERIALA INVENTARNII NOMER OB VREMYA | INT CHAR INT INT CHAR | 5 50 3 5 20 |
Процесс проектирования БД является итеративным, а не линейным или последовательным. Термин «итеративный» означает «повторяющийся»
Схема данных представлена на следующем рисунке:
Проектирование базы данных реляционного типа
Нормализация отношений
Нормализация позволяет проектировать базу данных, в которой нет ненужных избыточных данных и противоречий, которые могут повлечь за собой проблемы производительности и даже потере данных.
Для определения состава таблиц следует произвести нормализацию исходного иерархического отношения. Спроектированная база данных содержит три таблицы: Операция(OPER), Материалы(MAT), Оборудование(OBOR). Все ограничения целостности данных при подготовке программных средств для загрузки и корректировки базы данных были соблюдены. Также предусмотрена защита базы данных от несанкционированного доступа и разрушения.
|
|
Нормализация отношений позволяет проектировать базу данных, в которой нет ненужных и избыточных данных или противоречий данных, которые могут повлечь проблемы производительности или потерю информации при корректировке. Нормализация – это выделение атомарных отношений из иерархических.
В первой нормальной форме все атрибуты сущности атомарны, т.е. неделимы. Это условие выполнено.
Ненормализованное отношение имеет вид:
OPER (NPP#, MAT (KMAT#, NMAT), OBOR (KOBOR#, NOBOR, HARAKT), VREMYA)
Результат нормализации:
OPER (NPP#, KMAT#, KOBOR#, VREMYA)
MAT (KMAT#, NMAT)
OBOR (KOBOR#, NOBOR, HARAKT)
Нормализация отношений
Шаг 0. Иерархическая структура может рассматриваться как ненормализованное отношение OPER0 и еще на двух доменах элементы, которых не является атомарным: MAT0, OBOR0.
Ненормализованное отношение имеет вид:
OPER0 (NPP#, MAT0 (KMAT#, NMAT), OBOR0 (KOBOR#, NOBOR, HARAKT), VREMYA)
Полное множество всех нормализованных и ненормализованных отношений имеет вид:
|
|
OPER0 (NPP#, KMAT0, KOBOR0, VREMYA)
MAT0 (KMAT#, NMAT)
OBOR0 (KOBOR#, NOBOR, HARAKT)
Шаг 1. Приведем этот набор совокупности отношений к первой нормальной форме. Начиная с отношения, являющимся корнем иерархии, берем его первичный ключ и расширяем непосредственно подчиненный корню отношения, включая в них первичный ключ. Вычеркиваем из исходного отношения все не простые атрибуты, то есть те, у которых элементы неатомарные.
Получим совокупность отношений в первой нормальной форме:
OPER1 (NPP#, KMAT#, KOBOR#, VREMYA)
MAT1 (KMAT#, NMAT)
OBOR1 (KOBOR#, NOBOR, HARAKT)
Отношение находится во 2-ой нормальной форме, т.к. оно находится в 1-ой нормальной форме, и каждый неключевой атрибут зависит от всего ключа.
Отношение находится в 3-й нормальной форме, т.к. оно находится во 2-ой нормальной форме и не имеет транзитивных зависимостей.
Дальнейшей нормализации не требуется, т.к. аномалии вставки и аномалии удаления отсутствуют.
Запросы
Запрос - это средство Access для выборки данных из базы данных в форме таблицы, выполняемой по заданному условию, а также для выполнения определенных действий над табличными данными.
1. SELECT Операция.Код, Операция.[Наименование операции], Операция.Время, Материал.[Наименование материала], Оборудование.[Наименование оборудования]
|
|
FROM Оборудование INNER JOIN (Материал INNER JOIN Операция ON Материал.[Код материала]=Операция.[Код материала]) ON Оборудование.[Инвентарный номер]=Операция.[Инвентарный номер]
WHERE Операция.Код=[Введите код операции(номер операции)];
Такой запрос называется запросом с параметром. Параметром является код операции. Значение параметра вводится в диалоговом окне.
После нажатия кнопки «OK», получаем информацию о конкретной операции.
Еще один пример запроса с параметром:
2. SELECT Оборудование.[Инвентарный номер], Оборудование.[Наименование оборудования], Операция.[Наименование операции], Операция.Код
FROM Оборудование INNER JOIN Операция ON Оборудование.[Инвентарный номер] = Операция.[Инвентарный номер]
WHERE (((Оборудование.[Инвентарный номер])=[Введите инвентарный номер оборудования]));
После ввода номера оборудования выводятся сведения об операциях, выполняемых на конкретном оборудовании.
Также существует простой запрос. Он необходим для выборки сведений из базы данных.
Дата добавления: 2020-04-25; просмотров: 131; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!