- •1.Краткий обзор современного состояния проблемы
- •2.Актуальность данной работы и основания для ее проведения
- •3.Цель работы
- •1.Понятие баз данных
- •2.Понятие субд
- •3.Понятие первичного и внешнего ключей
- •4. Понятие индекса
- •5. Функциональные зависимости
- •6. Виды связей
- •7. Нормальная форма
- •1. Спецификация требований к базе данных
- •2.Определение множества атрибутов бд
- •3.Определение множества ключей бд
- •4.Определение множества функциональных зависимостей бд
- •4. Нормализация бд
- •I нормальная форма
- •II нормальная форма
- •III нормальная форма
- •5. Создание базы данных в Microsoft Access
4. Нормализация бд
Ключ в отношение будем обозначать подчеркиванием.
R={фамилия, имя, отчество ,дата рождения, дата приема на работу, позывной, номер ВУ, дата выдачи ВУ, на больничный, в отпуске, уволен, причина увольнения, государственный номер, марка, цвет, год выпуска, свидетельство о регистрации, собственник, дата последнего тех.осмотра, в ремонте, номер заказа, дата, время , улица, дом ,подъезд, улица назначения, дом назначения, подъезд назначения, выполнен, отменен, стоимость, номер путевого листа, дата открытия, время открытия, дата закрытия, время закрытия, количество выполненных заказов , плата за указание информационных услуг, зарплата}
I нормальная форма
I нормальная форма выполнена, так как отсутствуют функциональные зависимости от части атрибута.
II нормальная форма
II нормальная форма выполнена, поскольку выполняются условия I нормальной формы, и отсутствуют функциональные зависимости от части ключа.
III нормальная форма
III нормальная форма не выполнена, так как существуют транзитивные связи вторичного атрибута от ключа.
Исследуем отношение R
Фамилия, имя, отчество → позывной & позывной → государственный номер, марка, цвет, год выпуска, свидетельство о регистрации, собственник, дата последнего тех.осмотра, в ремонте.
Чтобы избавиться от транзитивной зависимости необходимо разбить исходной отношение R на отношения R1 и R2 :
R1 ={ фамилия, имя, отчество , позывной ,дата рождения, дата приема на работу, номер ВУ, дата выдачи ВУ, на больничный, в отпуске, уволен, причина увольнения, в ремонте, номер заказа, дата, время , улица, дом ,подъезд, улица назначения, дом назначения, подъезд назначения, выполнен, отменен, стоимость, номер путевого листа, дата открытия, время открытия, дата закрытия, время закрытия, количество выполненных заказов , плата за указание информационных услуг, зарплата }
R2 ={ позывной, государственный номер, марка, цвет, год выпуска, свидетельство о регистрации, собственник, дата последнего тех.осмотра, в ремонте }
Отношение R1 удовлетворяет условиям III нормальной формы.
Исследуем отношение R2
Позывной → государственный номер & государственный номер → марка, цвет, год выпуска, свидетельство о регистрации, собственник, дата последнего тех.осмотра, в ремонте.
Избавимся от транзитивности разбив отношение на отношения R21 и R22 :
R21 ={позывной, государственный номер}
R22 ={государственный номер, марка, цвет, год выпуска, свидетельство о регистрации, собственник, дата последнего тех.осмотра, в ремонте }
Теперь отношения R21 и R22 удовлетворяют условиям III нормальной формы.
Приведя схему БД к III н.ф. получили 3 отношения: R1, R21, R22 .
Нормальная форма Бойса - Кодда
Отношения R21 и R22 находиться в нормальной форме Бойса - Кодда, поскольку находятся в III нормальной форме и каждый детерминант множества функциональных зависимостей является потенциальным ключом.
Отношение R1 не находиться в нормальной форме Бойса - Кодда, так как существуют следующий функциональные зависимости:
1) Фамилия, имя, отчество → позывной & позывной, номер заказа → дата, время , улица, дом ,подъезд, улица назначения, дом назначения, подъезд назначения, выполнен, отменен, стоимость;
2) Фамилия, имя, отчество → позывной & позывной, номер путевого листа → дата открытия, время открытия, дата закрытия, время закрытия, количество выполненных заказов , плата за указание информационных услуг, зарплата.
Что бы привести отношение R1 к нормальной форме Бойса - Кодда необходимо разбить его на отношения R1 , R12 , R13 :
R11 ={ фамилия, имя, отчество , позывной ,дата рождения, дата приема на работу, номер ВУ, дата выдачи ВУ, на больничный, в отпуске, уволен, причина увольнения }
R12 ={позывной, номер заказа , дата, время , улица, дом ,подъезд, улица назначения, дом назначения, подъезд назначения, выполнен, отменен, стоимость}
R13 ={позывной, номер путевого листа, дата открытия, время открытия, дата закрытия, время закрытия, количество выполненных заказов , плата за указание информационных услуг, зарплата}
Приведя схему БД к нормальной форме Бойса - Кодда получили 5 отношений (таблиц) : R21, R22 , R11 , R12 , R13 .