Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Нормализация отношений. Если значения некоторого атрибута однозначно идентифицирует кортежи отношений (все кортежи содержат различные значения атрибутов)

 

Ключи

Если значения некоторого атрибута однозначно идентифицирует кортежи отношений (все кортежи содержат различные значения атрибутов), атрибут называется первичным ключом отношения. Например, атрибут Д# в отношении ДЕТАЛЬ.

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

Например, (П#,Д#) в отношении ПОСТАВКА. По крайней мере комбинация из всех атрибутов будет первичным ключом. Т.о. каждое отношение будет иметь первичный ключ. Предполагается, что первичный ключ не избыточен в том смысле, что никакие из составляющих его атрибутов не являются излишними для однозначной1лишними для однозначногояющих его атрибутов не являются излишними для однозначного идентизначения атрибутов) идентификации кортежа в отношении.

Например, комбинация (Д# ЦВ) не является первичным ключом для отношения ДЕТАЛЬ.

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

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

Атрибут отношения R1 является внешним ключом, если атрибут – не первичный ключ отношения R1, но его значения являются значениями первичного ключа некоторого отношения R2.

Например атрибут Д# в отношении ПОСТАВКА внешний ключ (первичный ключ в ДЕТАЛЬ).

Первичный и внешний ключи служат для связи между отношениями. Не всегда «связывающий» атрибут является ключом. Например, если мы потребуем «соразмещения» поставщиков и деталей (связь отношений ДЕТАЛЬ и ПОСТАВЩИК), атрибуты ГОР и ГОРОД не будет ключом.

Функциональная зависимость

Атрибут Y отношения R функционально зависит от атрибута X отношения R тогда и только тогда, когда каждое значение X в отношении R в каждый момент времени связано точно с одним значением Y. Одно и тоже значение X может появляться в нескольких различных кортежах отношения R. Если Y функционально зависит от X, то по определению каждый из этих кортежей должен содержать также одно и то же значение Y.

Например, в отношении ПОСТАВЩИК атрибуты ПОСТ, СТАТ, ГОРОД функционально зависят от П#

 

X, Y или оба могут быть составными атрибутами.

Например, в отношении ПОСТАВКА атрибут КОЛ функционально зависит от составного атрибута (П# Д#)

 

Полная функциональная зависимость.

Атрибут Y находится в полной функциональной зависимости от атрибута X, если он функционально зависит X и не зависит функционально от любого подмножества атрибута X (X д.б. составным).

Например, полная функциональная зависимость (П# Д#) => КОЛ

Не находится в полной функциональной зависимости (П# СТАТ) => ГОРОД, т.к.

П# => ГОРОД

В примерах функциональной зависимости от первичного ключа.

Отношение R находится в первой нормальной форме тогда и только тогда, когда все входящие в него домены содержат только атомарные (неделимые) значения. Любое нормальное отношение находится в 1НФ.

Рассмотренные отношения находятся в четвертой нормальной форме (4НФ).

Отношение R находится в 4НФ тогда и только тогда, когда в каждый момент времени каждый кортеж отношения R состоит из значения первичного ключа, которое идентифицирует некоторый объект, и из множества взаимных произвольных значений атрибутов, некоторым образом описывающих этот объект.

Чтобы продемонстрировать процесс нормализации, возьмем отношение.

ПЕРВОЕ (П#, СТАТ, ГОРОД, Д#, КОЛ).

Считаем, что СТАТ – транспортные издержки, т.е. СТАТ функционально зависит от ГОРОД.

ГОРОД => СТАТ

 

ПЕРВОЕ

 

П# СТАТ ГОРОД Д# КОЛ
п1   ЛОНДОН д1  
п1   ЛОНДОН д2  
п1   ЛОНДОН д3  
п1   ЛОНДОН д4  
п1   ЛОНДОН д5  
п1   ЛОНДОН д6  
п2   ПАРИЖ д1  
п2   ПАРИЖ д2  
п3   ПАРИЖ д2  
п4   ЛОНДОН д2  
п4   ЛОНДОН д4  
п4   ЛОНДОН д5  

 

Первичный ключ (П#, Д#)

 

 

Отношения R и Q с атрибутами X,Y и Y,Z.

Пример:

Отношение R с тремя атрибутами: номер работника, номер выполняемого задания, расчетный срок выполнения задания. Здесь третий атрибут неполно транзитивно зависит от первого атрибута, поскольку один и тот же работник может выполнять несколько заданий. Поэтому после приведения отношения R к ЗНФ таблице распадается на две. В первой таблице номеру работника соотносятся номера выполняемых им заданий, во второй – номер задания соответствует расчетный срок его выполнения.

В программное обеспечение реляционных баз данных включается программа для автоматической нормализации.

 

 

<== предыдущая лекция | следующая лекция ==>
Алгебра отношений | Проектирование баз данных
Поделиться с друзьями:


Дата добавления: 2014-01-11; Просмотров: 516; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.