Главная » Microsoft SQL Server, Базы данных » Идентификация множества сущностей

0

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

Дополнительные сущности отражают множество дополнительных фрагментов информации об основных объектах или их группах и объединяют их в единую систему. При разработке логической модели данных различные типы логических сценариев требуют наличия множества сущностей, в том числе следующих:

?               множество объектов;

?               отношения между объектами;

?               организация или группировка объектов;

?               целостность значений;

?               сложные объекты.

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

Множество объектов

Иногда оказывается, что один объект на самом деле является списком множества других объектов, как в приведенных ниже примерах.

?               В базе данных туристического агентства один тур может упоминаться несколько раз, но каждый раз с разными датами.

?               В базе данных семей каждый человек может иметь несколько детей.

?               Табель рабочего времени сотрудника может содержать множество штампов времени. Этот табель рассматривается как один объект, однако при ближайшем рассмотрении он окажется списком временньгх событий.

?               Календарь сотрудника может содержать множество напоминаний.

Отношения между объектами

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

?               В базе данных турагентства клиенты участвуют в турах, а проводят их гиды. Существуют отношения между клиентами и турами, а также между гидами и турами.

О Материал может создаваться из множества других материалов.

?               Участковый врач может обслуживать несколько членов семьи; это отношение между ним и этими членами.

?               В системе проверки качества программного обеспечения в одной функции может быть обнаружено множество ошибок.

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

Для примера предположим, что 96% клиентов имеют всего один адрес, 4% имеют еще один адрес, а всего один клиент имеет множество филиалов, разбросанных по всему миру. Добавление в таблицу первых 96% клиентов не потребует дополнительных объединений. Добавление дополнительных адресов потребует наличия дополнительной таблицы, объединенной отношением “один ко многим”. Придется использовать флаг в таблице клиентов для индикации наличия многочисленных офисов, чтобы избежать проверки левым внешним объединением наличия дополнительных офисов у всех клиентов. (Объединения мы детально рассмотрим в главе 9.)

Этот аспект проектирования может возникнуть при разработке логической схемы; физическая схема также может потребовать его для своей оптимизации.

Организация и группировка объектов

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

?               Клиенты могут быть сгруппированы по странам.

?               Материалы могут группироваться по своему состоянию (сырье, товары в производстве, готовая продукция).

?               В базе данных турагентства туры могут группироваться по странам.

Целостность значений

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

?               Тип кредитной карточки, используемой для покупок.

?               Регион, которому принадлежат адреса.

?               Код подразделения некоторой организации может принимать определенные значения.

Сложные объекты

Некоторые объекты в реальной жизни настолько сложные, что моделировать их одной сущностью невозможно. Информация принимает больше форм, нежели могут содержать один первичный ключ и одна строка таблицы. Чаще всего это касается составных объектов реального мира. Например, в одном заказе может содержаться множество строк. Эти строки являются частью заказа, однако для их моделирования потребуется создание дополнительной сущности.

Источник: Нильсен, Пол. Microsoft SQL Server 2005. Библия пользователя. : Пер. с англ. — М. : ООО “И.Д. Вильямс”, 2008. — 1232 с. : ил. — Парал. тит. англ.

По теме:

  • Комментарии