Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Миронов_Курсовая 29.03.2015.docx
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
4 Мб
Скачать
☆

1.5.3 Задание первичных и альтернативных ключей

Приведение модели базы данных к первой нормальной форме

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

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

Условия первой нормальной формы:

каждое поле неделимо;

отсутствуют повторяющиеся поля или группы полей.

Результат приведения БД к первой нормальной форме представлен в таблице 1:

Таблица 1 – Информационная модель данных в первой нормальной форме

СУЩНОСТЬ

АТРИБУТЫ

ЗАПИСЬ

Номер записи

Имя посетителя

Почтовый адрес посетителя

Сообщение

Дата/время

ЗАКАЗ

Номер заказа

Фамилия

Имя

Номер телефона

Адрес электронной почты

Регион

Город

Улица

Номер дома

Корпус

Квартира

Статус

Дата/время

Способ доставки

Дополнительная информация

Наименование товара

Количество

Сумма заказа

ПОСТАВКА

Номер поставки

Наименование товара

Поставщик

Цена

Дата/время

Количество

ТОВАР

Номер товара

Наименование

Тип

Жанр

Дата выхода

Артикул

Описание

Разработчик

Издатель

Издатель в России

Системные требования

Изображение

Количество

Цена

Дополнительные материалы

Является ли популярным

Является ли новым

Доступен ли для предзаказа

Является ли удаленным

КЛИЕНТ

Фамилия

Имя

Отчество

Номер паспорта

Номер телефона

Адрес электронной почты

Регион

Город

Улица

Номер дома

Корпус

Квартира

Логин

Пароль

Дополнительная информация

Приведение модели базы данных ко второй нормальной форме

Выполним условия второй нормальной формы:

выполнены условия первой нормальной формы;

первичный ключ однозначно определяет всю запись;

все поля зависят от первичного ключа;

первичный ключ не должен быть избыточным.

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

Для каждой сущности выделим уникальные ключи.

Из таблицы «Заказ» уберём всю информацию о клиенте, заменив её внешним ключом (идентификатор клиента), который ссылается на уникальный ключ клиента в таблице «Клиент»

В таблице «Поставка» заменим атрибут «Наименование товара» внешним ключом «Идентификатор товара», который ссылается на атрибут «Уникальный ключ товара» в таблице «Товар».

Так как сущности «Заказ» и «Товар» имеют отношения «много - ко - многим», то выделим вспомогательную таблицу («Товары в заказе»): Сущность «Товары в заказе» имеет следующие атрибуты: уникальный ключ заказа, уникальный ключ товара, количество.

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

Таблица 2 – Информационная модель данных во второй нормальной форме

СУЩНОСТЬ

АТРИБУТЫ

ЗАПИСЬ

Уникальный ключ записи

Имя посетителя

Почтовый адрес посетителя

Сообщение

Дата/время

ЗАКАЗ

Номер

Уникальный ключ заказа

Идентификатор клиента

Статус

Дата/время

Способ доставки

Дополнительная информация

ПОСТАВКА

Уникальный ключ поставки

Идентификатор товара

Поставщик

Цена

Дата/время

Количество

ТОВАР

Уникальный ключ товара

Наименование

Тип

Жанр

Дата выхода

Артикул

Описание

Разработчик

Издатель

Издатель в России

Системные требования

Изображение

Количество

Цена

Дополнительные материалы

Является ли популярным

Является ли новым

Доступен ли для предзаказа

Является ли удаленным

КЛИЕНТ

Уникальный ключ клиента

Фамилия

Имя

Отчество

Номер паспорта

Номер телефона

Адрес электронной почты

Регион

Город

Улица

Номер дома

Корпус

Квартира

Логин

Пароль

Дополнительная информация

ТОВАРЫ В ЗАКАЗЕ

Уникальный ключ заказа

Уникальный ключ товара

Количество

Сумма заказа