Реферат Курсовая Конспект
Нормализация полученных отношений - Курсовой Проект, раздел Компьютеры, База данных проката автомобилей Нормализация Полученных Отношений. Нф. Для Приведения Таблиц К 1Нф Требуется ...
|
Нормализация полученных отношений. НФ. Для приведения таблиц к 1НФ требуется составить прямоугольные таблицы (один атрибут – один столбец) и разбить сложные атрибуты на простые, а многозначные атрибуты вынести в отдельные отношения.
Примечание.
В реальных БД сложные атрибуты разбиваются на простые, если: а) этого требует внешнее представление данных; б) в запросах поиск может осуществляться по отдельной части атрибута.
Разделим атрибут ФИО на два атрибута Фамилия и Имя, отчество.
Многозадачный атрибут Телефоны клиентов следует выделить в отдельное отношение ТЕЛЕФОНЫ. 2НФ. В нашем случае составные первичные ключи имеют отношение ВЗЯТЬ НА ПРОКАТ и ОЧЕРЕДЬ. Неключевые атрибуты этих отношений функционально полно зависят от первичных ключей. 3НФ. В отношении ВЗЯТЬ НА ПРОКАТ атрибут Скидка зависит от атрибутов Дата выдачи прав, Стоимость ущерба про предыдущим выдачам и от количества выдач, а не от первичного ключа, поэтому Скидку следует вынести в отдельное отношение. Но если мы выделим в отдельное отношение, то получившиеся связи будут иметь тип 1:1. Следовательно, декомпозиция нецелесообразна.
В отношении АВТОМОБИЛИ атрибуты Марка и Вместимость зависят от атрибута Модель, а не от первичного ключа, поэтому выносим в отдельную таблицу.
Содержание поля Имя поля Тип, длина Примечания Модель A_model C(30) первичный ключ Марка A_brand C(20) обязательное поле Вместимость A_capacity N(1) обязательное поле 4НФ. Отношения данного примера не нарушают 4НФ, т.к. не содержат нетривиальных многозначных зависимостей.
В реальных базах данных после нормализации может проводиться денормализация.
Она проводится с одной целью – повышение производительности БД. Запрос на получение списка телефонов клиентов потребует в нормализованной БД соединения отношений.
Пользователю безразлична форма представления этого списка: номера телефонов через запятую или в столбец. Поэтому мы откажемся от создания отдельных отношений с номерами телефонов, и вернёмся к варианту с многозначными полями. После проведённых преобразований схема БД выглядит так: Окончательные схемы отношений базы данных с указанием ключей и других ограничений целостности приведены в таблицах: Таблица 5.Схема отношения АВТОМОБИЛИ(auto) Содержание поля Имя поля Тип, длина Примечания Идентификатор автомобиля A_id N(4) суррогатный первичный ключ Модель A_model C(30) внешний ключ (к models) Цвет A_color C(20) обязательное поле Год выпуска A_year C(4) обязательное поле Пробег A_mileage N(8) обязательное поле Стоимость проката A_price N(4) обязательное поле Таблица 6.Схема отношения КЛИЕНТЫ(clients) Содержание поля Имя поля Тип, длина Примечания Идентификатор клиента C_id N(4) суррогатный первичный ключ Фамилия C_fname C(20) обязательное поле Имя, отчество C_lname C(30) обязательное поле Адрес C_address C(50) Номер телефона C_phone C(30) многозначное поле Дата выдачи прав C_experience D Обязательное поле Таблица 7.Схема отношения ВЗЯТЬ НА ПРОКАТ(rent) Содержание поля Имя поля Тип, длина Примечания Идентификатор автомобиля A_id N(4) внешний ключ (к auto); составной первичный ключ Идентификатор клиента C_id N(4) внешний ключ (к clients); составной первичный ключ Дата выдачи R_date D составной первичный ключ Срок выдачи R_term N(3) обязательное поле Стоимость R_price N(6,2) обязательное поле; стоимость с учетом всех скидок Дата возвращения R_rdate D дата фактического возвращения автомобиля клиентом Состояние автомобиля A_state C(200) состояние автомобиля после возвращения Возмещение ущерба R_crash N(8) стоимость поломки Скидка R_skidk N(2) вычисляемое поле; скидка в процентах Таблица 8.Схема отношения ОЧЕРЕДЬ(turn) Содержание поля Имя поля Тип, длина Примечания Идентификатор автомобиля A_id N(4) внешний ключ (к auto); составной первичный ключ Идентификатор клиента C_id N(4) внешний ключ (к clients); составной первичный ключ Дата постановки в очередь T_date D составной первичный ключ Таблица 9.Схема отношения МОДЕЛИ(models) Содержание поля Имя поля Тип, длина Примечания Модель A_model C(30) первичный ключ Марка A_brand C(20) обязательное поле Вместимость A_capacity N(1) обязательное поле
– Конец работы –
Эта тема принадлежит разделу:
Задача - информационная поддержка деятельности пункта по прокату легковых автомобилей. БД должна осуществлять:  ведение списка автомобилей; … Инфологическое проектирование Анализ предметной области База данных создается для информационной поддержки…
Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Нормализация полученных отношений
Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:
Твитнуть |
Новости и инфо для студентов