Программирование >>  Реализация целостности данных 

1 ... 18 19 20 [ 21 ] 22 23 24 ... 124


ку проектируемой системы, осуществляемая механизмом

СУБД, существенно отличается от домена предметной области. Мы увидим, какие трудности могут при этом возникнуть, когда перейдем к рассмотрению методов реализации целостности данных в главе 4.

Максимальное число экземпляров одной сущности, которое может быть связано с экземпляром другой сущности, мы будем называть мощностью данной связи. (Следует отметить, что применительно к связям понятия и имеют несколько иной смысл, чем применительно к Существуют три основных разновидности мощности связей: один к одному , один ко многим и многие ко

Для указания мощности и обязательности связей я использую условные обозначения, показанные на рис. 3-2. На мой взгляд, техника представления связей между сущностями птичья лапа (о которой рассказывалось в главе 1) - наиболее простой и понятный из всех

способов представления, им удобно пользоваться при обсуждении

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

Связи изображаются в вцце линий между прямоугольниками

Сущность 1

IfO <j Су(.лнос гь 2

Сущности изображены в прямоугольниках

Одна черточка на линии, обозначающей связь, означает один Знак птичья лапа означает много

Кружком отмечена необязательная связь . (иногда этот символ читается как ноль )

Символы могут быть скомбинированы: например,-

это сочетание символов означает один или много

Гас. 3-2. Так обозначают обязательность ость связей па диаграммах



ЧАСТЬ 1 Теории ионных баз дамкых

Моделирование связей

После того как вы определили, что данная связь существует в системе, приступайте к ее моделированию, включая атрибуты одного отношения (ссылочное отношение, primary relation) в другое {ссылающееся отношение, foreign relation), как показано на рис. 3-3.

Orders

J 1 <

Order Detalts

OrderlD CustomerlD OrderDate Re quired Date

OrderlD

ProductlD

UnitPrice

Quantity

Discount

t 1

Puc. 3-3. Атрибуты ссылочного отношения (Orders) включаются щееся отношение (OrderDetails)

Вы, несомненно, заметили некоторые различия между этой и формальной диаграммой сущности - связи* на рис. 1-6. Во-первых, атрибуты не представлены как отдельные объекты. На этом этапе проектирования нас интересуют связи между сущностями, а не их структура. Обозначение же на диаграмме атрибутов сущностей усложняет схему, перегружает ее лишними деталями.

По тем же причинам на диаграмме не указан и тип связей. Я считаю это излишним, поскольку описание связи зависит от того, с какой стороны вы начинаете ее рассматривать (сравните: преподаватели читают лекции студентам и студенты слушают лекции преподавателей*). Но хотя я никогда не обозначаю тип связей на диаграмме, все же иногда указываю атрибут, который будет использоваться для реализации связи в схеме базы данных. Эт biio, когда, например, у ссылочной сущности более одного ключа-кандидата, и вы хотите явно указать, какой из этих ключей будет использоваться.

Как я уже упоминала, данные и!. диаграмм очень удобен при обсуждении с клиентами деталей реализации системы. Такие диаграммы легко строить вручную с помощью различных средств построения диаграмм, например Visio Professional или Mic.vogr;ifK Flowcharter 7. В состав Microsoft Access, Microsoft SQL Server и Microsoft Visual Basi жс входят средства построения диаграмм, которыми вы можете воспользоваться вместо или дополнительно к описанной здесь методике.

Использование интерактивных инструментов: окна связей между сущностями в Access (для файла .mdb механизма базы данных Microsoft Jet) или диаграмм баз данных (в том случае, если база данных реализуется средствами SQL Server). - обладает очевидными



Н (а) женат Женат Разведен Вдовец (замужем) (замужем) (разведена) (вдова)

Гис. 3-5. Диаграмма состояний перехода: возможные варианты изменения семейного положения

Но разрабатываемая модель должна отражать лишь семейное положение, реализовать сущности абстрактного отноще-ния, чтобы проследить изменения семейного положения и проверить их правильность, совершенно излишне. Если же все-таки для вас важн мация. что Джон и Мери Смит поженились в 1953 и развелись в 1972 г., после чего Мери снова вышла замуж в 1975 и овдовела в г., то потребуется использовать сущности абстрактного отношения.

Связи один к одному

Это, пожалуй, самый простой тип связей. Связи один к одному между сущностями X и Y - это такие связи, при которых каждый экземпляр ности X может быть связан только с одним экземпляром сущности Y. Большинство связей тип / : являются связями один к одному , другие примеры весьма редки. Если при проектировании системы вы решили выбрать связь один к одному между некоторыми сущностями, убедитесь, что эта связь не будет изменяться на протяжении всего срока эксплуатации системы, или что подобное изменение окажется несущественным и эта связь не будет интересовать вас в дальнейшем. Предположим, вы создаете базу данных служебных в некоем здании, где в каждом кабинете на-

ходится только один сотрудник. Такая связь будет связью ОДнн к одному (рис. 3-6).

Building

Office

f- -\

Employee

1 1

Гис. 3-6. Между сущностями Office (кабинет) существует связ дип к одному

и Employee (сотрудник)



1 ... 18 19 20 [ 21 ] 22 23 24 ... 124

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика