- •Создание базы данных «Программы»
- •Ягту 220301.65-015 лр
- •Задание:
- •1. Разработка структуры базы данных
- •1.1 Уточнение задания
- •1.2 Анализ предметной области, определение сущностей и взаимосвязей между ними
- •Структура сущностей:
- •1.3 Нормализация Первая нормальная форма требует:
- •1.4 Проектирование таблиц базы данных.
- •2. Реализация серверной части.
- •2.1 Создание таблиц.
- •2.2 Работа с данными.
- •3. Разработка клиентской части.
- •3.1. Описание клиентской части с точки зрения разработки.
- •3.2 Описание клиентской части с точки зрения пользователя.
Структура сущностей:
Программа Версия
|
Название Фирма Тип Инф. о поддержке |
|
|---|---|---|
|
|
|
Название Версия Назначение Дата выпуска Стоимость |
Производитель Технические хар-ки
|
Фирма Страна Инф. для связи |
|
|---|---|---|
|
|
|
Название Версия Тип сист/треб Значение сист/треб Язык |
1.3 Нормализация Первая нормальная форма требует:
1) простая структура таблицы
2) в таблице нет одинаковых по смыслу полей (нет повторяющихся групп)
3) в таблице нет составных полей
4) в таблице нет одинаковых записей
Рассмотрим выполнение требований первой нормальной формы к каждой таблице.
1) В каждой таблице информация предоставляется в виде совокупности строк и столбцов.
2) Как мы видим, в каждой отдельно взятой таблице отсутствуют составные поля, так как в работе с ними, нам не понадобятся отдельные части их значений.
3) Также в каждой таблице отсутствуют одинаковые по смыслу поля. При рассмотрении каждой таблицы в отдельности мы видим, что информация, содержащаяся в каждом из столбцов, различна.
4) Двух полностью одинаковых строк ни в одной таблице не должно быть, так как одинаковые элементы множества являются одним элементом, но части записей, такие как, например, в таблице "Программа": "Название", "Фирма" и "Тип" могут повторяться. В каждой из таблиц есть поля, которые уникальны и не повторяются. Например, "Название" в таблице "Программа" или "Фирма" в таблице "Производитель". У одной программы не может быть несколько производителей, также как у программы с одним названием не могут быть различные типы программ.
Как мы видим требования первой нормальной формы к каждой таблице выполняются, следовательно, они приведены к первой нормальной форме.
Вторая нормальная форма требует, чтобы таблицы были приведены к первой нормальной форме и чтобы все поля каждой таблицы зависели от первичного ключа. Первичный ключ должен однозначно определять запись и не быть избыточным. Также, мы должны убедиться в том, чтобы внутри каждой из сущностей не было внутренних взаимосвязей между характерными группами с целью уменьшения избыточности.
Определение первичных ключей:
В таблице "Программа" в качестве ключевого поля можно выбрать поле "название". В таблице "Версия" ключевым полем является совокупность полей "название" и "версия", так как они однозначно определяют запись. В таблице "Производитель" в качестве ключевого поля можно выбрать поле "фирма". В таблице "Технические характеристики" ключевое поле является составным – состоит из полей "название", "версия" и "тип сист/треб".
Произведем анализ смысловых зависимостей.
В таблице "Программа" поле "название" определяет атрибуты программы, такие как "фирма", "тип" и "информация о поддержке", так как программе с таким названием могут соответствовать только такие параметры. В таблице "Версия" совокупность полей "название" и "версия" однозначно определяют "назначение", "дату выпуска" и "стоимость". В таблице "Производитель" поле "фирма" определяет "страну", и "информацию для связи". В таблице "Технические характеристики" только совокупность полей "название", "версия" и "тип сист/треб" однозначно определяют "значения сист/треб" и "язык".
Производитель Программа
Название |
Фирма Тип Инф. о поддержке |
Фирма |
Страна Инф. для связи |
Н Версия Тип сист/треб |
Значение сист/треб Язык |
Н Версия |
Назначение Дата выпуска Стоимость |
Третья нормальная форма требует, чтобы таблицы были приведены ко второй нормальной форме, и чтобы между не ключевыми полями таблицы не было транзитивных зависимостей, то есть, чтобы значение любого поля, не входящего в состав первичного ключа не зависело от другого поля, не входящего в первичный ключ.
В нашем случае, таблицы удовлетворяют выше перечисленным требованиям, и это означает, что все таблицы соответствуют третьей нормальной форме.

азвание
азвание