Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Отчёт по БД.doc
Скачиваний:
13
Добавлен:
16.08.2019
Размер:
283 Кб
Скачать
☆

Структура сущностей:

Программа Версия

Название

Фирма

Тип

Инф. о поддержке

Название

Версия

Назначение

Дата выпуска

Стоимость


Производитель Технические хар-ки

Фирма

Страна

Инф. для связи

Название

Версия

Тип сист/треб

Значение сист/треб

Язык


1.3 Нормализация Первая нормальная форма требует:

1) простая структура таблицы

2) в таблице нет одинаковых по смыслу полей (нет повторяющихся групп)

3) в таблице нет составных полей

4) в таблице нет одинаковых записей

Рассмотрим выполнение требований первой нормальной формы к каждой таблице.

1) В каждой таблице информация предоставляется в виде совокупности строк и столбцов.

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

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

4) Двух полностью одинаковых строк ни в одной таблице не должно быть, так как одинаковые элементы множества являются одним элементом, но части записей, такие как, например, в таблице "Программа": "Название", "Фирма" и "Тип" могут повторяться. В каждой из таблиц есть поля, которые уникальны и не повторяются. Например, "Название" в таблице "Программа" или "Фирма" в таблице "Производитель". У одной программы не может быть несколько производителей, также как у программы с одним названием не могут быть различные типы программ.

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

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

Определение первичных ключей:

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

Произведем анализ смысловых зависимостей.

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

Производитель Программа

Название

Фирма

Тип

Инф. о поддержке

Фирма

Страна

Инф. для связи



Н азвание

Версия

Тип сист/треб

Значение сист/треб

Язык

Н азвание

Версия

Назначение

Дата выпуска

Стоимость

Технические хар-ки Версия

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

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