КАТЕГОРИИ: Архитектура-(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) |
Основные определения. Для демонстрации основных идей раздела будет использоваться видоизмененная переменная-отношение поставок
Для демонстрации основных идей раздела будет использоваться видоизмененная переменная-отношение поставок, которая в дополнение будет содержать в дополнение к обычным атрибутам S#, P# и QTY также атрибут CITY, представляющий город соответствующего поставщика. Эту переменную-отношение назовем SCP (рис. 4.1.).
Рис. 4.1. Пример значения переменной-отношения SCP Приведем определение концепции функциональной зависимости: Пусть R является переменной-отношением, а X и Y – произвольными подмножествами множества атрибутов переменной-отношения R. Тогда Y функционально зависимо от X, что в символическом виде записывается как: X ® Y (читается либо как «X функционально определяет Y», либо «X стрелка Y») тогда и только тогда, когда для любого допустимого значения переменной-отношения R каждое значение множества X отношения R связано в точности с одним значением множества Y отношения R. Иначе говоря, для любого допустимого значения переменной-отношения R, если два кортежа переменной-отношения R совпадают по значению X, они также совпадают и по значению Y. Левая и правая части функциональной зависимости (X и Y соответственно), называют детерминантом и зависимой частью соответственно. Пример 4.1. Примером функциональной зависимости для переменной-отношения SCP является зависимость S# ® CITY, поскольку в любой момент времени одному поставщику соответствует в точности один город. Следовательно, любые два кортежа переменной-отношения SCP в один и тот же момент и с одним и тем же номером поставщика должны соответствовать одному и тому же городу. Практически это утверждение можно рассматривать как ограничение целостности для переменной-отношения SCP: CONSTRAINT S#_CITY COUNT (SCP {S#}) = COUNT (SCP {S#,CITY}); а запись S# ® CITY может рассматриваться как сокращенный способ представления этой формулировки. Перечислим еще некоторые ФЗ для переменной-отношения SCP: {S#,P#} ® QTY {S#,P#} ® CITY {S#,P#} ® {CITY, QTY} {S#,P#} ® S# {S#,P#} ® {S#, P#, CITY, QTY} {S#} ® CITY Следует отметить, что если X является потенциальным ключом переменной-отношения R, то все атрибуты Y переменной-отношения R должны обязательно быть функционально зависимы от X. Если переменная-отношение R удовлетворяет функциональной зависимости A ® B и A не является потенциальным ключом, то R будет характеризоваться некоторой избыточностью. Например, в переменной-отношении SCP наличие ФЗ S# ® CITY приведет к тому, что сведения о месте расположения поставщика в определенном городе повторятся много раз (это хорошо видно на рис. 3.1.). Если ограничиться всеми ФЗ, выполняющимися для некоторой переменной-отношения, то их число может быть достаточно большим (см. выше список, где представлена их часть для переменной-отношения SCP). В следующих разделах описаны методы сокращения этого множества. Это задача важна, так как мы уже отмечали, что каждая ФЗ является ограничением целостности, а, следовательно, при каждом обновлении данных в базе СУБД вынуждена будет проверять соблюдение их всех. Таким образом, желательно найти для заданного множества ФЗ S такое множество T, которое (в идеальном случае) было бы существенно меньше множества S, и при этом каждая ФЗ из множества S могла бы быть заменена ФЗ из множества T. Если найти такое множество T, то СУБД достаточно было бы контролировать выполнение ФЗ из этого множества, что автоматически подразумевало бы соблюдение всех ФЗ из множества S. Решение этой задачи представляет большой практический интерес.
Дата добавления: 2014-01-13; Просмотров: 302; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |