Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Программисту -> Коннолли Т. -> "Базы данных. Проектирование, реализация и сопровождение. Теория и практика" -> 194

Базы данных. Проектирование, реализация и сопровождение. Теория и практика - Коннолли Т.

Коннолли Т., Бегг К. Базы данных. Проектирование, реализация и сопровождение. Теория и практика — М.: Вильямc, 2003. — 1440 c.
ISBN 5-8459-0527-3
Скачать (прямая ссылка): bazidannihpproekt2003.djv
Предыдущая << 1 .. 188 189 190 191 192 193 < 194 > 195 196 197 198 199 200 .. 683 >> Следующая


420

Часть III. Методы анализа и проектирования баз данных Рис. 11.23. Приме 'дефекта типа "разветвление"

На основании этой модели можно сделать вывод, что один отдел (Division) может состоять из нескольких отделений компании (Brandl) и в нем может работать многочисленный штат сотрудников. Проблемы начинаются при попытках выяснить, в каком отделении компании работает каждый из сотрудников отдела. Для исследования этой проблемы рассмотрим показанную на рис. 11.24 модель, в которой показаны экземпляры связей Has и Operates с использованием в качестве атрибутов первичного ключа сущностей .JLaffjDivision и Branch.

С помощью этой семантической сетевой модели попробуем ответить на такой вопрос: "В каком отделении компании работает сотрудник с номером ' SG3 71 ?" К сожалению, на этот вопрос нельзя дать ответ, используя только данную структуру. На основании этой семантической модели можно лишь сделать вывод, что этот сотрудник работает в отделении 'ВООЗ ' или 1BOо7'. Неспособность дать точный ответ на поставленный вопрос является результатом дефекта типа "разветвление", связанного с неправильной интерпретацией связей между сущностями Scaff, Division и Branch. Устранить эту проблему можно путем перестройки ER-модели для представления правильного взаимодействия этих сущностей таким образом, как показано на рис. 11.25.

Сущности Связь Сущности I ;вязь Сущности

Staff Has 1 1 ri lion Operator Sh

Рис. 11.25. Пример переработки ER подели (рис. 11.23) с целью устранения дефекта типа "разветвление"

глава 11. Модель "сущность-связь"

421 Если проверить эту структуру на уровне отдельных связей Operates и Has (рис. 11.26), можно убедиться, чю теперь легко дать однозначный ответ на поставленный выше вопрос. С помощью семантической сетевой модели можно определить, что сотрудник с номером 1 SGJ 7 работает в отделении компании с номером В003 . которое входит в состав отдела ' Di1.

11 „7.2Дефекты типа "разрыв"

Дефект типа "разрыв". Появляется в том случае, когда в модели предполагается наличие связи между типами сущностэй, но не существует пути между отдельными сущностями ЭТИХтипов

Дефект типа "разрыв" может иознш., .ті, если существует одна или несколько связей с минимальной кратностью, равной нулю (которая обоз» чает необязательное участие), и^ри! связи составляют часть пути между взаимосвязанными сущностями. На рис. 11.27 потенциальный дефект типа "разрыв" показан на примере связей между сущностями Branch, ?flaf' и PropertyForRent.

Рассмотрев эту модель, можно сделать вывод, что одно отделение компании имеет много сотрудников, которые работают со сдаваемыми в аренду объектами. Однако не все сотрудники непосредственно работают с объектами и не все сдаваемые в аренду объекты недвижимости в каждый конкретный момент находится в ведении кого-либо из сотрудников компании. В данном случае проблема возникает, когда необходимо выяснить, какие объекты недвижимости приписаны к тому или иному отделению компании. Для исследования этой проблемы рассмотрим представленные на рис. 11.28 экземпляры связей Has и Oversees, обозначенные значениями атрибутов первичного ключа сущностей Branch, Staff и PropertyForRent.

Сущнос™ LdS3t Сущности

OoerariS Branch Hu Staff

Рис. 11.27. Пример дефекта типа 'разрыв" 422 Часть III. Методы анализа и проектирования баз данных Сущности Сьозі Сущности Связь Сущности

Branch hi j Staff Oversees Propi IyForRpnl

С помощью этой семантической сети попробуем ответить на следующий вопрос: "Какое отделение компании отвечает за работу с объектом под номером ' РА141 ?" К сожалению, на данный вопрос нельзя дать ответ, поскольку этот объект В текущий момент не 1ЇВЩЯН ни с одним из сотрудников, работающих в каком-либо из отделений компании. Неспособность дать ответ на зі данный вопрос рассматривается как утрата информации (поскольку известно, что любой объект недвижимости должен быть приписан к какому-то отделению компании), в результате которой и возникает дефект типа "разрыв". Кратность сущностей Staff и PropertyForRent в связи Oversees имеет минимальное значение, равное нулю, а это означает, что некоторые объекты недвижимости не могут быть связаны с отделением компании с помощью информации о сотрудниках. Поэтому для разрешения этой проблемы следует ввести недостающую связь Offers между сущностями Branch и PropertyForRent. ЕЕ-мсель. показанная на рис. 11.29, отображает истинные связи между этими сущностями. Такая структура гарантирует, что нам всегда будут известны объекты недвижимости, связанные с каждым отделением компании, включая объекты недвижимости, которые в данный момент не поручены никому из сотрудников этой компании.

Если теперь исследовать эту структуру на уровне отдельных связей Has, Ov ers= - и Offers (рис. 11.30), то станет ясно, что мы можем дать ответ на поставленный выше вопрос: объект недвижимости с номером ' РА14' приписан к отделению компании с номером 1 BD 07 •.

Рис. 11,29, Ei иодр.чь, представленная на рис. 11.27, после переработки с целью уст ранения дефекта типа "разрыв"
Предыдущая << 1 .. 188 189 190 191 192 193 < 194 > 195 196 197 198 199 200 .. 683 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100