Классика баз данных - статьи


         

Это определение специфицирует связь между


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

Мы рассмотрим далее некоторые связи на плоскости обобщения объекта "employee" (). Предположим, что компания, где работают служащие (employee), владеет парком транспортных средств (vehicle), в том числе, легковыми автомобилями (car) и грузовиками (truck). Мы будем моделировать связь между служащими и транспортными средствами, определяющую использование служащими транспортных средств. В частности, грузовики используются водителями грузовиков (trucker) для перевозки материалов, а легковые автомобили используются инженерами (engineer) для визитов на удаленные участки. Никакого другого (официального) использования транспортных средств не предусматривается. Представление "employee" и "vehicle" в плоскости обобщения показано на рис. 15.



Рис. 15. Декомпозиция объектов "employee" и "vehicle" в плоскости обобщения

Имеется два способа моделирования этой связи между служащими и транспортными средствами. Один способ состоит в том, чтобы абстрагировать единственную связь между "employee" и "vehicle" как агрегированный объект, скажем, "поездка" (trip). К сожалению, такой подход является слишком общим для того, чтобы позволить в полной мере выразить имеющуюся в виду связь. Оказалось бы, что любой служащий может бы взять для поездки любое транспортное средство, например, могло бы получиться, что секретарь ведет грузовик. Кроме того, в этом случае не существует не различаются поездки, связанные с доставкой материалов, и поездки инженеров на участки. Очень вероятно, что в зависимости от вида поездки существенны разные ее атрибуты.

Второй способ моделирования требуемой связи между служащими и транспортными средствами состоит в том, чтобы декомпозировать ее в плоскости обобщения на две связи – одна между "trucker" и "truck", а другая между "engineer" и "car". Первая связь может быть абстрагирована как агрегированный объект "перевозка" (haulage), а вторая – как "визит" (visit).

Содержание  Назад  Вперед