Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Зависимости между атрибутами ⇐ ПредыдущаяСтр 2 из 2
смотрим основные виды зависимостей между атрибутами отношений: функциональные, многозначные и транзитивные. понятие функциональной зависимости является базовым, так как на его основе формируются определения всех остальных видов зависимостей. Определение функциональной зависимости. Атрибут В функционально зависит от А, если каждому значению А соответствует в точности одно значение 6. Мате-ики функциональная зависимость В or А обозначается записью А ->В. Это означа-зо всех кортежах с одинаковым значением атрибута А атрибут В будет иметь так-э и то же значение. Отметим, что А и В могут быть составными — состоять из двух атрибутов. •ношении на рис. 19.7 можно выделить функциональные зависимости между ат--ш ФИО-Жаф, ФИО->Должн, Должн->0клад, ФИО->Предмет. В отношении 19.7 ключ является составным и состоит из атрибутов ФИО, Предмет, Группа, ^ношение находится в первой нормальной форме, то все неключевые атрибуты онально зависят от ключа с различной степенью зависимости. 'личной зависимостью называется зависимость неключевого атрибута от части «го ключа. В рассматриваемом отношении атрибут Должн находится в функцио-i зависимости от атрибута ФИО, являющегося частью ключа. Тем самым атрибут находится в частичной зависимости от ключа отношения. Альтернативным вариантом является полная функциональная зависимость неключевого атрибута от всего составного ключа. В нашем примере атрибут ВидЗан находится в полной функциональной зависимости от составного ключа. Атрибут С зависит от атрибута А транзитивно, если для атрибутов А, В, С выполняются условия А -> В и В -> С, но обратная зависимость отсутствует. В отношении на рис. 19.7 транзитивной зависимостью связаны атрибуты: ФИО ->Должн -> Оклад Между атрибутами может иметь место многозначная зависимость. Определение многозначной зависимости. В отношении R атрибут Б многозначно зависит от атрибута А, если каждому значению Л соответствует множество значений В, не связанных с другими атрибутами из R. Многозначные зависимости могут быть «один ко многим» (1:М), «многие к одному» (М:1) или «многие ко многим» (М:М), обозначаемые соответственно: А-»В, А«-ВиА«—»В. Например, пусть преподаватель ведет несколько предметов, а каждый предмет может вестись несколькими преподавателями, тогда имеет место зависимость ФИО«—»Предмет.
Выявление зависимостей между атрибутами Выявление зависимостей между атрибутами необходимо для выполнения проектирования БД методом нормальных форм, рассматриваемым далее. Выявим зависимости между атрибутами отношения ПРЕПОДАВАТЕЛЬ, приведенного на рис. 19.7. При этом учтем следующее условие, которое выполняется в данном отношении. Условие. Один преподаватель в одной группе может проводить только один вид занятий (лекции или практические занятия). В результате анализа отношения получаем зависимости между атрибутами, показанные на рис. 19.8. а) б) ФИО->Должн ФИО-> Оклад ФИО->Стаж ФИО->Д_Стаж ФИО-Жаф Стаж->Д_Стаж Должн-> Оклад
Оклад->Должн ФИО, Предм, Группа->ВидЗан Рис. 19.8. Зависимость между атрибутами К выделению этих функциональных зависимостей ФЗ для рассматриваемого примера приводят следующие соображения. Фамилия, имя и отчество у преподавателей факультета уникальны. Каждому преподавателю однозначно соответствует его стаж, т. е. имеет место функциональная зависимость ФИО->Стаж. Обратное утверждение неверно, так как одинаковый стаж может быть у разных преподавателей.
-дый преподаватель имеет определенную добавку за стаж, т. е. имеет место фун-льная зависимость ФИО->Д_Стаж, но обратная функциональная зависимость -вует, так как одну и ту же надбавку могут иметь несколько преподавателей. 1дый преподаватель имеет определенную должность (преп., ст. преп., доцент, профес-одну и ту же должность могут иметь несколько преподавателей, т. е. имеет место функ-=,ная зависимость ФИО->Должн, а обратная функциональная зависимость отсутствует. -дый преподаватель является сотрудником одной и только одной кафедры. Поэто-тсциональная зависимость ФИО-Жаф имеет место. С другой стороны, на каждой «много преподавателей, поэтому обратной функциональной зависимости нет. ^дому преподавателю соответствует конкретный оклад, который одинаков для всех ~ов с одинаковыми должностями, что учитывается зависимостями ФИО->Оклад ^н->0клад. Нет одинаковых окладов для разных должностей, поэтому имеет мес-кциональная зависимость Оклад->Должн.
zh и тот же преподаватель в одной группе по разным предметам может проводить раз-щы занятий. Определение вида занятий, которые проводит преподаватель, невозможно зания предмета и группы, поэтому имеет место функциональная зависимость ФИО,, Группа->ВидЗан. Действительно, Петров М. И. в 256 группе читает лекции и прово- •тические занятия. Но лекции он читает по СУБД, а практику проводит по Паскалю, си не были выделены зависимости между атрибутами ФИО, Предм и Группа, поскольку азуют составной ключ и не учитываются в процессе нормализации исходного отношения, ле того, как выделены все функциональные зависимости, следует проверить их эванность с данными исходного отношения ПРЕПОДАВАТЕЛЬ (рис. 19.7). •ример, Должн.=преп и Оклад=500 всегда соответствуют друг другу во всех кор-т. с. подтверждается функциональная зависимость Должн. <—> Оклад. Так же г верифицировать и остальные функциональные зависимости, не забывая об ог-жности имеющихся в отношении данных. Нормальные формы •Процесс проектирования БД с использованием метода нормальных форм является трад иционным и заключается в последовательном переводе отношений из первой нормальной формы в нормальные формы более высокого порядка по определенным правилам. Выделяют следующую последовательность нормальных форм: первая нормальная форма (1НФ); вторая нормальная форма (2НФ); третья нормальная форма (ЗНФ); усиленная третья нормальная форма, или нормальная форма Бойса-Кодда (БКНФ) четвертая нормальная форма (4НФ); пятая нормальная форма (5НФ). Первая нормальная форма. Отношение находится в 1 НФ, если все его атрибуты яв- : простыми (имеют единственное значение). Исходное отношение строится таким м, чтобы оно было в 1 НФ. Перевод отношения в следующую нормальную форму осуществляется методом декомпозиции без потерь. Такая декомпозиция должна обеспечить то, что запросы (выборка данных по условию) к исходному отношению и к отношениям, получаемым в результате декомпозиции, дадут одинаковый результат. Основной операцией метода является операция проекции. Поясним ее на примере. Предположим, что в отношении R(A,B,C,D,E...) устранение функциональной зависимости C->D позволит перевести его в следующую нормальную форму. Для решения этой задачи выполним декомпозицию отношения R на два новых отношения R1 (А,В,С,Е...) и R2(C,D). Отношение R2 является проекцией отношения R на атрибуты С и D. Исходное отношение ПРЕПОДАВАТЕЛЬ, используемое для иллюстрации метода, имеет составной ключ ФИО. Предм. Группа и находится в 1НФ, поскольку все его атрибуты простые. В этом отношении, в соответствии с рис. 19.8 б, можно выделить частичную зависимость атрибутов Стаж, Д_Стаж, Каф, Должн, Оклад от ключа — указанные атрибуты находятся в функциональной зависимости от атрибута ФИО, являющегося частью составного ключа. Эта частичная зависимость от ключа приводит к следующему: 1. В отношении присутствует явное и неявное избыточное дублирование данных, например: • повторение сведений о стаже, должности и окладе преподавателей, проводящих занятия в нескольких группах и/или по разным предметам;
• повторение сведений об окладах для одной и той же должности или о надбавках за одинаковый стаж. 2. Следствием избыточного дублирования данных является проблема их редактирования. Например, изменение должности у преподавателя Иванова И. М. потребует просмотра всех кортежей отношения и внесения изменений в те из них, которые содержат сведения о данном преподавателе. Часть избыточности устраняется при переводе отношения в 2НФ. Вторая нормальная форма. Отношение находится в 2НФ, если оно находится в 1 НФ и каждый неключевой атрибут функционально полно зависит от первичного ключа (составного). Для устранения частичной зависимости и перевода отношения в 2НФ необходимо, используя операцию проекции, разложить его на два отношения следующим образом: • построить проекцию без атрибутов, находящихся в частичной функциональной зависимости от первичного ключа; • построить проекции на части составного первичного ключа и атрибуты, зависящие от этих частей. В результате получили два отношения R1 и R2 в 2НФ (рис. 19.9). В отношении R1 первичный ключ является составным и состоит из атрибутов ФИО. Предм. Группа. Напомним, что данный ключ в отношении R1 получен в предположении, что каждый преподаватель в одной группе по одному предмету может либо читать лекции, либо проводить практические занятия. В отношении R2 ключ ФИО. Исследование отношений R1 и R2 показывает, что переход к 2НФ позволил исключить явную избыточность данных в таблице R2 — повторение строк со сведениями о преподавателях. В R2 по-прежнему имеет место неявное дублирование данных. Часть 5. Базы данных
Рис. 19.9. Отношения БД в 2НФ дальнейшего совершенствования отношения необходимо преобразовать его в ЗНФ. Третья нормальная форма. Отношение находится в ЗНФ, если оно находится в 2НФ
-и неключевой атрибут нетранзитивно зависит от первичного ключа. : в отношении R1 транзитивные зависимости отсутствуют, то в отношении R2 ФИО->Должн -> Оклад, ФИО->Оклад ->Должн, Ф И О - > Стаж - > Д_Стаж зитивные зависимости также порождают избыточное дублирование информа-~ношении. Устраним их. Для этого используя операцию проекции на атрибуты, неся причиной транзитивных зависимостей, преобразуем отношение R2, полу-этом отношения R3, R4 и R5, каждое из которых находится в ЗНФ (рис. 19.10 а), ски эти отношения представлены на рис. 19.10 б. рактике построение ЗНФ схем отношений в большинстве случаев является дос-»! и приведением к ним процесс проектирования реляционной БД заканчивает -твительно, приведение отношений к ЗНФ в нашем примере привело к устране-ыточного дублирования, в отношении имеется зависимость атрибутов составного ключа от неключевых атрибу- - обходимо перейти к усиленной ЗНФ энная ЗНФ, или нормальная форма Бойса-Kodda (БКНФ). шение находится в БКНФ, если оно находится в ЗНФ и в нем отсутствуют зависи- - ючей (атрибутов составного ключа) от неключевых атрибутов. 19. Основы построения баз данных
Рис. 19.10. Отношения БД в ЗНФ У нас подобной зависимости нет, поэтому процесс проектирования на этом заканчивается. Результатом проектирования является БД, состоящая из следующих таблиц: R1, R3, R4, R5. В полученной БД имеет место необходимое дублирование данных, но отсутствует избыточное. Итак, процесс нормализации отношений методом нормальных форм предполагает последовательное удаление из исходного отношения следующих межатрибутных зависимостей: • частичных зависимостей неключевых атрибутов от ключа (2НФ); • транзитивных зависимостей неключевых атрибутов от ключа (ЗНФ); • зависимости ключей (атрибутов составных ключей) от неключевых атрибутов (БКНФ). Кроме метода нормальных форм Кодда, используемого для проектирования небольших БД, применяют и другие методы, например, метод ER-дшграмм (метод «Сущность-связь»). Этот метод используется при проектировании больших БД, на нем основан ряд средств проектирования БД. Суть метода ER-диаграмм состоит в том, что из предметной области решаемой задачи выделяются объекты (сущности). Информация о каждом из них представляется в виде объектного отношения. На основе ряда правил объектные отношения могут связываться между собой с помощью связных отношений или непосредственно друг с другом.
На последнем этапе метода ER-диаграмм отношения, полученные в результате проектирования, проверяются на принадлежность их к БКНФ. Этот этап может выполняться уже с использованием метода нормальных форм. После завершения проектирования БД создается с помощью СУБД. Обеспечение целостности БД Обеспечение целостности БД означает выполнение ряда ограничений, соблюдение которых необходимо для поддержания непротиворечивости хранимых данных. Среди ограничений целостности можно выделить ограничения диапазонов значений атрибутов отношений и структурные ограничения на кортежи отношений. Первый тип ограничений целостности предполагает контроль значений атрибутов значений. Например, значения атрибута Дата_рождения не могут превышать значения атрибута Дата_приема в записях отношений о кадрах. структурные ограничения фиксируют два требования целостности, которые должны придерживаться реляционными СУБД: требование целостности сущностей и целост-лылок. Каждому экземпляру сущности, представленному в отношении, соответ- -олько один его кортеж. Первое требование состоит в том, что любой кортеж от-я должен быть отличим от любого другого кортежа этого отношения, иными -з, любое отношение должно обладать первичным ключом. :мулировка второго требования тесно связана с понятием внешнего ключа. Напом- э внешние ключи служат для связи отношений (таблиц БД) между собой. При этом одной таблицы, назовем ее родительской, служащий для связи ее с другой табли- эчерней, в которой он является первичным ключом — называется внешним ключом отношения (таблицы). Говорят, что отношение, в котором определен внешний ключ, - ся на отношение, в котором этот же атрибут является первичным ключом. -ование целостности по ссылкам состоит в том, что для каждого значения внеш- -оча родительской таблицы должна найтись строка в дочерней таблице с таким «нием первичного ключа. Например, если в отношении R1 (рис. 19.11) содержат- -гсельская таблица Дочерняя таблица R2
Внешний ключ Рис. 19.11. Связь отношений с помощью внешнего ключа =ния о сотрудниках кафедры, а атрибут этого отношения Должн является первич- •очом отношения R2, то в этом отношении для каждой должности из R1 должна 3>ока с соответствующим ей окладом. Языки запросов QBE и SQL яимые в базе данные можно обрабатывать (просматривать и редактировать) «вруч- - с помощью имеющихся в каждой СУБД средств просмотра и редактирования в таблицах. Для повышения эффективности множественной обработки данных зфования и выбора данных из таблиц) создаются и выполняются запросы. эос представляет собой специальным образом описанное требование, определяющее сроизводимых над БД операций по выборке или модификации хранимых данных, подготовки запросов с помощью различных СУБД, как правило, используются овных языка описания запросов:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2016-07-16; просмотров: 1692; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.83.222 (0.056 с.) |