Тема_7 (1122352), страница 2
Текст из файла (страница 2)
Базы данных.16 Проектирование РБДСемантическая модель Entity-Relationship (2)Основные понятия ER-модели (1)Основными понятиями ER-модели являются сущность, связь и атрибутСущность – это реальный или представляемый объект, информация о которомдолжна сохраняться и быть доступнойЭто «определение» позаимствовано из одного из ранних вариантовдокументации CASE-системы OracleПонятно, что на самом деле мы имеем дело с тавтологией, поскольку, вопервых, пытаемся определить термин сущность через не определенныйтермин объект, а во-вторых, попытки определения термина объект настолькоже безнадежныОбычно авторы пытаются оправдываться тем, что в подобном контекстеимеется в виду «житейское», а не сколько-нибудь формализованное понятиеобъектаКонечно, от этого не становится легче, поскольку понятие сущности должнопониматься в достаточно точном смыслеНо эта тавтология традиционна для области семантического моделирования.
Вэтой области стремятся максимально избегать формальностей29.10.2009С.Д. Кузнецов. Базы данных.17 Проектирование РБДСемантическая модель Entity-Relationship (3)Основные понятия ER-модели (2)В диаграммах ER-модели сущность представляется ввиде прямоугольника, содержащего имя сущностиПри этом имя сущности – это имя типа, а не некоторогоконкретного экземпляра этого типаБыло бы правильнее всегда использовать термины типсущности и экземпляр типа сущности, но во избежаниемногословности в тех случаях, где это не приводит кдвусмысленности, мы будем использовать терминсущность в значении типа сущностиДля большей выразительности и лучшего понимания имясущности может сопровождаться примерами конкретныхэкземпляров этого типа29.10.2009С.Д.
Кузнецов. Базы данных.18 Проектирование РБДСемантическая модель Entity-Relationship (4)Основные понятия ER-модели (3) На рисунке изображена сущностьАЭРОПОРТ с примерными экземплярами«Шереметьево» и «Хитроу» Эта примитивная диаграмма, тем неменее, несет важную информацию Во-первых, она показывает, что в базе данных будут содержатьсяоднотипные структуры данных (экземпляры сущности), описывающиеаэропорты Во-вторых, поскольку в жизни существует несколько точек зрения нааэропорты, приведенные примеры аэропортов позволяют несколькосузить допустимый набор точек зрения В нашем случае приведены примеры международных аэропортов, такчто, скорее всего, имеется точка зрения пассажира или пилотамеждународных авиарейсов29.10.2009С.Д. Кузнецов.
Базы данных.19 Проектирование РБДСемантическая модель Entity-Relationship (5)Основные понятия ER-модели (4)При определении типа сущности необходимо гарантировать,что каждый экземпляр типа сущности может быть отличим отлюбого другого экземпляра того же типа сущностиЭто требование в некотором роде аналогично требованиюотсутствия кортежей-дубликатов в реляционных таблицахСвязь – это графически изображаемая ассоциация,устанавливаемая между двумя типами сущностейКак и сущность, связь – это типовое понятие, все экземплярыобоих связываемых типов сущностей подчиняютсяустанавливаемым правилам связыванияПоэтому правильнее говорить о типе связи, устанавливаемоймежду типами сущности, и об экземплярах типа связи,устанавливаемых между экземплярами типа сущностиТем не менее, как и в случае типа сущности, для краткости мыбудем часто использовать термин связь в значении типа связи29.10.2009С.Д.
Кузнецов. Базы данных.20 Проектирование РБДСемантическая модель Entity-Relationship (6)Основные понятия ER-модели (5)В обсуждаемом здесь варианте ER-модели связи всегда являютсябинарными, то есть соединяющими два типа сущности, и они могутсуществовать между двумя разными типами сущностей или междутипом сущности и им же самим (рекурсивная связь)В любой связи выделяются два конца (в соответствии ссуществующей парой связываемых сущностей), на каждом изкоторых указываютсяимя конца связи,степень конца связи (сколько экземпляров данного типа сущностидолжно присутствовать в каждом экземпляре данного типа связи),обязательность связи (т.
е. любой ли экземпляр данного типа сущностидолжен участвовать в некотором экземпляре данного типа связи)Заметим, что в некоторых вариантах ER-модели конец связиназывают ролью связи в данной сущностиТогда можно говорить об имени роли, степени роли иобязательности роли связи в данной сущности29.10.2009С.Д. Кузнецов. Базы данных.21 Проектирование РБДСемантическая модель Entity-Relationship (7)Основные понятия ER-модели (6) Связь представляется в виде ненаправленной линии,соединяющей две сущности или ведущей от сущности к ней жесамой В месте «стыковки» связи с сущностью используются: трехточечный вход в прямоугольник сущности, если для этойсущности в связи могут (или должны) использоваться много(many) экземпляров сущности; одноточечный вход, если в связи может (или должен)участвовать только один (one) экземпляр сущности29.10.2009С.Д.
Кузнецов. Базы данных.22 Проектирование РБДСемантическая модель Entity-Relationship (8)Основные понятия ER-модели (7) Обязательный конец связи изображается сплошной линией, анеобязательный – прерывистой линией Связь между сущностями БИЛЕТ и ПАССАЖИР, связывает билеты ипассажиров Конец связи с именем «для» позволяет связывать с одним пассажиромболее одного билета, причем каждый билет должен быть связан с какимлибо пассажиром Конец связи с именем «имеет» показывает, что каждый билет можетпринадлежать только одному пассажиру, причем пассажир не обязан иметьхотя бы один билет Лаконичная устная трактовка изображенной диаграммы состоит вследующем: каждый БИЛЕТ предназначен для одного и только одного ПАССАЖИРА; каждый ПАССАЖИР может иметь один или более БИЛЕТОВ29.10.2009С.Д.
Кузнецов. Базы данных.23 Проектирование РБДСемантическая модель Entity-Relationship (9)Основные понятия ER-модели (8) На рисунке изображена рекурсивная связь, связывающая сущностьМУЖЧИНА с ней же самой Конец связи с именем «сын» определяет тот факт, что несколькомужчин могут быть сыновьями одного отца Конец связи с именем «отец» означает, что не у каждого мужчиныдолжны быть сыновья Лаконичная устная трактовка изображенной диаграммы состоит вследующем: каждый МУЖЧИНА является сыном одного и только одногоМУЖЧИНЫ; каждый МУЖЧИНА может являться отцом одного или более МУЖЧИН29.10.2009С.Д. Кузнецов. Базы данных.24 Проектирование РБДСемантическая модель Entity-Relationship(10)Основныепонятия ER-модели (9)Атрибутом сущности является любая деталь, котораяслужит для уточнения, идентификации, классификации,числовой характеристики или выражения состояния сущности Имена атрибутов заносятся в прямоугольник,изображающий сущность, под именем сущности иизображаются малыми буквами, возможно, с примерами Некоторые атрибуты могут помечаться как необязательные Значения таких атрибутов не обязаны присутствовать во всех экземплярахданного типа сущности Атрибуты типа сущности в ER-модели похожи на атрибуты отношения вреляционной модели данных Введение именованных атрибутов вводит некоторую типовую структуру данных,имя которой совпадает с именем типа сущности в случае ER-модели или с именемпеременной отношения в случае реляционной модели Этой типовой структуре должны следовать все экземпляры типа сущности иливсе кортежи отношения29.10.2009С.Д.
Кузнецов. Базы данных.25 Проектирование РБДСемантическая модель Entity-Relationship(11)Основные понятия ER-модели (10)Но имеется и важное отличиеВ реляционной модели данных атрибут определяется какупорядоченная пара <имя_атрибута, имя_домена> (или<имя_атрибута, имя_базового_типа_данных>, если понятиедомена не поддерживается)Заголовок отношения, определяемый как множество такихпар, представляет собой полный аналог структурного типаданных в языках программированияПри определении атрибутов типа сущности в ER-моделиуказание домена атрибута не является обязательным, хотяэто и возможноОбсудим, чем вызвана эта возможность «ослабленного»определения атрибутов29.10.2009С.Д.
Кузнецов. Базы данных.26 Проектирование РБДСемантическая модель Entity-Relationship(12)Основныепонятия ER-модели (11)Семантические модели данных используются дляпостроения концептуальных схем БД, и эти схемыпреобразуются в реляционные схемы БД, которыеподдерживаются той или иной СУБДНесмотря на то, что в настоящее время типовыевозможности РСУБД в основном стандартизованы (наоснове стандарта языка SQL), детали базового набора типовданных и средств определения доменов в разных системахмогут различатьсяПоскольку производители CASE-средств проектированияреляционных БД стремятся не связывать обеспечиваемыеими возможности семантического моделирования сконкретной реализацией СУБД, они стимулируютоткладывание строгого определения типов атрибутов достадии полного определения реляционной схемы29.10.2009С.Д. Кузнецов.