|
Программирование >> Реализация целостности данных
ку проектируемой системы, осуществляемая механизмом СУБД, существенно отличается от домена предметной области. Мы увидим, какие трудности могут при этом возникнуть, когда перейдем к рассмотрению методов реализации целостности данных в главе 4. Максимальное число экземпляров одной сущности, которое может быть связано с экземпляром другой сущности, мы будем называть мощностью данной связи. (Следует отметить, что применительно к связям понятия и имеют несколько иной смысл, чем применительно к Существуют три основных разновидности мощности связей: один к одному , один ко многим и многие ко Для указания мощности и обязательности связей я использую условные обозначения, показанные на рис. 3-2. На мой взгляд, техника представления связей между сущностями птичья лапа (о которой рассказывалось в главе 1) - наиболее простой и понятный из всех способов представления, им удобно пользоваться при обсуждении проекта системы с заказчиком. Конечно, существуют и другие методы представления, имеющие свои преимущества, и вы можете выбрать тот, который вам больше нравится. Связи изображаются в вцце линий между прямоугольниками Сущность 1 IfO <j Су(.лнос гь 2 Сущности изображены в прямоугольниках Одна черточка на линии, обозначающей связь, означает один Знак птичья лапа означает много Кружком отмечена необязательная связь . (иногда этот символ читается как ноль ) Символы могут быть скомбинированы: например,- это сочетание символов означает один или много Гас. 3-2. Так обозначают обязательность ость связей па диаграммах ЧАСТЬ 1 Теории ионных баз дамкых Моделирование связей После того как вы определили, что данная связь существует в системе, приступайте к ее моделированию, включая атрибуты одного отношения (ссылочное отношение, primary relation) в другое {ссылающееся отношение, foreign relation), как показано на рис. 3-3.
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
Гис. 3-6. Между сущностями Office (кабинет) существует связ дип к одному и Employee (сотрудник)
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |