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

 

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

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

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


Выбор первичного ключа сущности осуществляется с учетом суммарной длины атрибутов, минимального количества необходимых атрибутов в ключе, а также наличия гарантий уникальности его значений в текущий момент времени и в обозримом будущем. В частности, табельный номер сотрудника (например, SG14 1) меньше по размеру, а потому удобнее в работе, чем номер карточки социального страхования (например, "Wjj22DShbD11. Следовательно, первичным ключом сущности Staff целесообразно выбрать именно атрибут staff No, а не атрибут NCW1 который в этом случае рассматривается как альтернативным ключ.

Составной ключ. Потенциальный ключ, который состоит из двух или нескольких

атрибутов.

В некоторых случаях ключ сущности состоит из нескольких атрибутов, значения которых, взятые вместе, а не по отдельности, уникальны для каждого экземпляра сущности. Например, сущность Advert (Рекламное об™>явл< мне, обладает атрибутами propertyNo, newspapi rWame, dateAdvert и cost. Многие объекты недвижимости одновременно рекламируются в нескольких газетах аа то же число. Для уникальной идентификации каждого рекламного объявления необходимо использовать значения propertyNo, newspaperNatre (Название газеты) и dateAdvert (Дата рекламного объявления). Таким образом, сущность Advert (Рекламное объявление) обладает составным первичным ключом, состоящим из атрибутов propertyNo, newspaperName и dateAdvert.

Схематическое представление атрибутов

Если сущность определенного типа должна отображаться на схеме вместе со своими атрибутами, то прямоугольник, представляющий эту сущность, делится на две части. В верхней части прямоугольника отображается имя сущности, а в

408

Часть III. Методы анализа и проектирования баз данных нижней — список имен атрибутов. Например, на рис. L1.10 приведена ER-дие грамма для сущностей типа Stafi и Branch и связанных с ними атрибутов.

Первым атрибутом (атрибутами) в списке должен быть первичный ключ для сущности данного типа, если он известен. Имя (имена) атрибута (атрибутов) первичного ключа должно быть обозначено дескриптором {PK} (сокращение от primary key). В языке ML принято присваивать атрибуту имя, которое начинается со строчной буквы, а если оно состоит из нескольких слов, то первая буква каждого следующего слова пишется с прописной буквы (например, address и telNo), Кроме того, на схемах могут применяться дополнительные дескрипторы, в том числе дескриптор с обозначением компонента первичного ключа {РРК} (сокращение от partial primary key), если атрибут образует часть составного первичного ключа, и дескриптор с обозначением альтернативного ключа {ак } (сокращение от alternate key). Как показано на рис. 11.10, первичным ключом сущности типа Staf: является атрибут st&f fNo, а первичным ключом сущности типа Branch — атрибут branchNo.

Рис. 11.10. Схематическое представление сущностей Stafiu Branch, а также их

В некоторых наиболее простых приложениях баз данных на ER-диаграмме могут быть показаны все атрибуты сущности каждого типа. Но в случае более сложных приложений баз данных на этих схемах отображается только один или несколько атрибутов, которые образуют первичный ключ сущности каждого типа. Если на ER-диаграмме отображаются только атрибуты первичного ключа, дескриптор {PK на схеме можно не показывать.

Для простых однозначных атрибутов дескрипторы не требуются, и поэтому их имена просто отображаются в виде списка под именем сущности. А за сложным атрибутом следует список составляющих его простых атрибутов, обозначенный отступом вправо. Например, на рис. 11.10 показан составной атрибут address сущности Branch, за которым следуют имена атрибутов, входящих в его состав, а именно street, city и postcode. Рядом с именами многозначных атрибутов ставится обозначение диапазона возможных значений этого атрибута. Например, если атрибут telNo обозначен диапазоном [1. .*] , это означает, что атрибут telNo может принимать одно или несколько значений. А если точно известно максимальное количество значений, можно обозначить атрибут с указа-

атрибутов

Глава 1 I. Модель "сущность-связь"

409 ниєм точного диапазона. Например, если атрибут cp.lNo не может содержать более трех значений, то он обозначается с помощью диапазона Il. . 3].

Производные атрибуты отмечаются префиксом в виде косой черты (/). Например, на рис. 11.10 показан производный атрибут сущности типа Staff /totalStaff.

11.4. Сущности сильного и слабого типов

Типы сущностей могут также подразделяться на сильные и слабые.

Сущность сильного типа. Тип г'щности, существе «анис которого не зависит от какого-то иного типа сущности.

Тип сущности называется сил ьны к, если его существование не зависит от наличия сущностей другого типа. К примерам сильных сущностей, которые показаны на рис. 11.1, относятся Staff, Branch, PropertyForRent и Client. Характерной особенностью сильного типа является то, что каждый экземпляр сущности может быть однозначно идентифицирован с помощью атрибута (атрибутов) первичного ключа сущности этого типа. Например, каждый сотрудник компании может быть однозначно идентифицирован с помощью атрибута EtafJNo, который является первичным ключом сущности типа Staff.
Предыдущая << 1 .. 183 184 185 186 187 188 < 189 > 190 191 192 193 194 195 .. 683 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100