Разделы презентаций


Язык ER-моделирования презентация, доклад

Содержание

Monday, August 12, 2019СОДЕРЖАНИЕОбщие сведенияОсновные понятия (сущность, атрибут, связь)Более сложные понятия Сопутствующие понятия Проектирование реляционной базы данных

Слайды и текст этой презентации

Слайд 1Лекция 10. Язык ER-моделирования БД
Национальный авиационный университет
Факультет компьютерных наук
Кафедра инженерии

программного обеспечения

Лекция 10. Язык ER-моделирования БДНациональный авиационный университетФакультет компьютерных наукКафедра инженерии программного обеспечения

Слайд 2Monday, August 12, 2019
СОДЕРЖАНИЕ
Общие сведения

Основные понятия (сущность, атрибут, связь)

Более сложные

понятия
Сопутствующие понятия
Проектирование реляционной базы данных

Monday, August 12, 2019СОДЕРЖАНИЕОбщие сведенияОсновные понятия (сущность, атрибут, связь)Более сложные понятия Сопутствующие понятия Проектирование реляционной базы данных

Слайд 3Monday, August 12, 2019
Общие сведения
Это язык определения информационной модели ПО.


Базируется на концепции, согласно которой информацион- ная модель ПО может быть

описана в терминах: сущность, атрибут, связь.
Используется на этапе анализа и прежде всего – концептуального моделирования.
Язык является существенно графическим.
Monday, August 12, 2019Общие сведенияЭто язык определения информационной модели ПО.  Базируется на концепции, согласно которой информацион-

Слайд 4Monday, August 12, 2019
Сущности
Сущность - это реальный или воображаемый объект,

информация о котором подлежит сбору или хранению.
ИМЯ СУЩНОСТИ
Графически сущность представляется

поимено- ванным прямоугольником с закругленными углами

Имя сущности дается в единственном числе заглавными буквами.

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

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

Monday, August 12, 2019СущностиСущность - это реальный или воображаемый объект, информация о котором подлежит сбору или хранению.ИМЯ

Слайд 5Monday, August 12, 2019
Связи
Связь - это некоторая представляющая интерес поименованная

ассоциация двух сущностей.
Связь является бинарной в том смысле, что это

всегда ассоциа- ция в точности двух сущностей или сущности с самой собой.
Каждая связь имеет два конца, для каждого из которых имеются свои:
имя;
степень/мощность (один/много);
Факультативность (обязательная/факультативная).
Monday, August 12, 2019СвязиСвязь - это некоторая представляющая интерес поименованная ассоциация двух сущностей.Связь является бинарной в том

Слайд 6Monday, August 12, 2019
Представление связей

Monday, August 12, 2019Представление связей

Слайд 7Monday, August 12, 2019
Именование и чтение связей
При чтении связи со

обязательной стороны ее имя необходимо предварить словами "во всех случаях"

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

Любой БИЛЕТ всегда выписывается на одного и только одного ПАССАЖИРа.
Любой ПАССАЖИР в общем случае имеет на свое имя один или не сколько БИЛЕТов.

Monday, August 12, 2019Именование и чтение связейПри чтении связи со обязательной стороны ее имя необходимо предварить словами

Слайд 8Monday, August 12, 2019
Допустимые и недопустимые связи
А
В
А
В

А
А
В
А
В
С
А
В

А

А

А
Допустимые
Недопустимые

Monday, August 12, 2019Допустимые и недопустимые связиАВАВААВАВСАВАААДопустимыеНедопустимые

Слайд 9Monday, August 12, 2019
Атрибуты
Атрибут - это любая деталь или аспект,

способствующие качественному или количественному описанию сущности, ее идентификации, классификации или

отражению ее состояния.


Приводить атрибуты ER-схеме не обязательно.
Желательно приводить обязательные и идентифицирующие атрибуты (см. далее).
Можно приводить атрибуты с примером его значения.

Monday, August 12, 2019АтрибутыАтрибут - это любая деталь или аспект, способствующие качественному или количественному описанию сущности, ее

Слайд 10Monday, August 12, 2019
Правило (1) – атрибут описывает одну сущность
Атрибут

должен описывать ту сущность, к которой он отнесен!
Атрибутом какой сущности

является "номер места": − билета, купона, посадочного талона, воздушного судна?
Monday, August 12, 2019Правило (1) – атрибут описывает  одну сущностьАтрибут должен описывать ту сущность, к которой

Слайд 11Monday, August 12, 2019
Правило (1) – атрибут описывает одну сущность
Атрибут

должен описывать ту сущность, к которой он отнесен!
Атрибутом какой сущности

является "номер места": − билета, купона, посадочного талона, воздушного судна?

Очевидно, это атрибут сущности МЕСТО

Monday, August 12, 2019Правило (1) – атрибут описывает  одну сущностьАтрибут должен описывать ту сущность, к которой

Слайд 12Monday, August 12, 2019
Правило (2) – атрибуты не должны повторяться

(1NF)
Сущность может обладать лишь одним значением атрибута. Если же многозначность

атрибута играет существенна, надо определить новую сущность, в которую войдут эти значения, и соединить ее с исходной сущностью связью многие-к-одному
Monday, August 12, 2019Правило (2) – атрибуты не должны  повторяться (1NF)Сущность может обладать лишь одним значением

Слайд 13Monday, August 12, 2019
Правило (3) – атрибут может стать сущностью
Атрибут

может стать сущностью, если он представляет самостоятельный интерес и обладает

собственными связями и атрибутами.
Monday, August 12, 2019Правило (3) – атрибут может стать сущностьюАтрибут может стать сущностью, если он представляет самостоятельный

Слайд 14Monday, August 12, 2019
Правило (4) – факультативность атрибутов
Атрибут, значение которого

может отсутствовать, называется факультативным.
Атрибут, значение которого должно быть всегда известно,

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

обязательный
факультативный

Monday, August 12, 2019Правило (4) – факультативность атрибутовАтрибут, значение которого может отсутствовать, называется факультативным.Атрибут, значение которого должно

Слайд 15Monday, August 12, 2019
Правило (5) – сущность обладает уникальной идентификацией
Каждая

сущность должна однозначно идентифицироваться посредством некоторой комбинации атрибутов и/или связей
Этот

атрибут входит в состав уникального идентификатора сущности МЕСТО

Эта связь входит в состав уникального идентификатора сущности МЕСТО

Monday, August 12, 2019Правило (5) – сущность обладает уникальной  идентификациейКаждая сущность должна однозначно идентифицироваться посредством некоторой

Слайд 16Monday, August 12, 2019
Правило (6) – полнота уникального идентификатора (2NF)


Значения атрибутов, не входящих в уникальный идентификатор, должны зависеть ОТ

ВСЕГО уникального идентификатора.

Удалите атрибуты, значения которых зависят лишь от той или иной части идентификатора. Присутствие таких атрибутов, как правило, указывает на наличие пропущенной сущности, связанной с данной

Monday, August 12, 2019Правило (6) – полнота уникального  идентификатора (2NF) Значения атрибутов, не входящих в уникальный

Слайд 17Monday, August 12, 2019
Правило (7) – зависимость только от уникального

идентификатора (3NF)
Значения атрибутов, не входящих в уникальный идентификатор, должны зависеть

ТОЛЬКО ОТ уникального идентификатора.
Monday, August 12, 2019Правило (7) – зависимость только от  уникального идентификатора (3NF)Значения атрибутов, не входящих в

Слайд 18Monday, August 12, 2019
Более сложные понятия
супертип/подтип,
базисные и переходные сущности,
разрешение связей

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

Monday, August 12, 2019Более сложные понятиясупертип/подтип,базисные и переходные сущности,разрешение связей многие-ко-многим, взаимоисключаемость, непереместимость, квалифицированная степень, избыточность, каскадное

Слайд 19Monday, August 12, 2019
Подтипы/супертипы
Подтип - это разновидность сущности.
Подтип неявно

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

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

супертипы

подтипы

Monday, August 12, 2019Подтипы/супертипыПодтип - это разновидность сущности. Подтип неявно наследует все атрибуты и связи супертипа. Подтипы

Слайд 20Monday, August 12, 2019
Пример типа/супертипа
НЕРЕГУЛЯРНЫЙ ПОЛЕТ и РЕГУЛЯРНЫЙ РЕЙСОВЫЙ ПОЛЕТ имеют

один и тот же атрибут – НОМЕР (наследуется из супертипа

РЕЙСОВЫЙ ПОЛЕТ), но отличаются связями!

Сущность является простой, если она не является подтипом или сама не имеет подтипов.

Monday, August 12, 2019Пример типа/супертипаНЕРЕГУЛЯРНЫЙ ПОЛЕТ и РЕГУЛЯРНЫЙ РЕЙСОВЫЙ ПОЛЕТ имеют один и тот же атрибут –

Слайд 21Monday, August 12, 2019
Разрешение связей многие-ко-многим
До
После
Связи многие-ко-многим часто встречаются

на ранних этапах анализа ПО. Это, как правило, свидетельствует о

том, что опущена сущность. Разрешение достигается введением новой переходной сущности, разделяющей окончания такой связи.
Monday, August 12, 2019Разрешение связей многие-ко-многим ДоПослеСвязи многие-ко-многим часто встречаются на ранних этапах анализа ПО. Это, как

Слайд 22Monday, August 12, 2019
Взаимоисключающие связи
Две или более связей одной и

той же сущности могут оказаться взаимоисключающими (либо-либо).
Этот факт представляется поперечной

дугой, пересекающей окончания всех соответствующих связей, с небольшими точками или кружками в местах пересечения.
Monday, August 12, 2019Взаимоисключающие связиДве или более связей одной и той же сущности могут оказаться взаимоисключающими (либо-либо).Этот

Слайд 23Monday, August 12, 2019
Свойства взаимоисключающих связей
Окончания связей, которые пересекает попереч- ная

дуга, должны быть либо все обязательными, либо все факультативными.
Окончание связи

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

Пример нарушения

Monday, August 12, 2019Свойства взаимоисключающих связейОкончания связей, которые пересекает попереч- ная дуга, должны быть либо все обязательными,

Слайд 24Monday, August 12, 2019
Непереместимые связи
Связь является непереместимой, если экземпляр сущности,

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

связи, не может в дальнейшем эту ассоциацию изменять.

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

Указатель неперместимости

Monday, August 12, 2019Непереместимые связиСвязь является непереместимой, если экземпляр сущности, будучи ассоциированным с экземпляром сущности, расположенной с

Слайд 25Monday, August 12, 2019
Квалифицированная степень
Квалифицированная степень предоставляет возможность указать пределы

для мощности (степени) окончания связи, ее стандартное, максимальное, среднее и

максимальное значение.
Monday, August 12, 2019Квалифицированная степеньКвалифицированная степень предоставляет возможность указать пределы для мощности (степени) окончания связи, ее стандартное,

Слайд 26Monday, August 12, 2019
Неизбыточные связи
ER-диаграмма не должна содержать связей, которые

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

В БД избыточность является обычным способом достижения необ- ходимого быстродействия. Однако решения такого рода должны приниматься проектировщиком и не должны предопределяться системным аналитиком .

Связи не избыточны

Связи избыточны

Monday, August 12, 2019Неизбыточные связиER-диаграмма не должна содержать связей, которые всегда, при любых обстоятельствах, могут быть выведены

Слайд 27Monday, August 12, 2019
Каскадное удаление
В реальном мире мы, когда теряем

о чем-то все сведения, часто неявно теряем и все сведения

о каких-то других взаимосвязанных вещах. Например, если мы удалим все сведения о БИЛЕТЕ, мы неявно удалим и все сведения о его КУПОНАХ.
Это так называемая зависимость по существованию

X - удалить всех детей при удалении родителя;
C - запретить удаление родителя, если существуют дети;
N - родители и дети могут удаляться независимо.

Monday, August 12, 2019Каскадное удалениеВ реальном мире мы, когда теряем о чем-то все сведения, часто неявно теряем

Слайд 28Monday, August 12, 2019
Правила каскадного удаления

Monday, August 12, 2019Правила каскадного удаления

Слайд 29Monday, August 12, 2019
Производные атрибуты

Monday, August 12, 2019Производные атрибуты

Слайд 30Monday, August 12, 2019
Основные понятия, связанные с сущностями
Независимые/зависимые сущности
Базисные сущности
Родительские/дочерние

сущности
Сущности супертипы/подтипы и простые сущности
Переходные сущности и сущности-связки
Сущности-классификаторы

Monday, August 12, 2019Основные понятия, связанные с сущностямиНезависимые/зависимые сущностиБазисные сущностиРодительские/дочерние сущностиСущности супертипы/подтипы и простые сущностиПереходные сущности и

Слайд 31Monday, August 12, 2019
Сопутствующие понятия
потоки данных - моделирование связей, существующие

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

каждой задачи;
хранилище данных – способ объединения различных потоков данных в виде единого места хранения;
прикладные задачи – потребители данных;
события – инициаторы прикладных задач.
Monday, August 12, 2019Сопутствующие понятияпотоки данных - моделирование связей, существующие между  прикладными задачами, изображая данные, поступающие

Слайд 32Monday, August 12, 2019
Проектирование реляционной базы данных
Шаг 1. Преобразование сущностей

в таблицы.
Шаг 2. Преобразование атрибутов в столбцы.
Шаг 3. Пребразование связей один-ко-многим

и один-к-одному во внешние ключи.
Шаг 4. Преобразование связей многие-ко-многим в сущности-связки
Шаг 5. Представление уникальных идентификаторов (ключами таблиц или столбцами-заменителями)
Шаг 6. Проектирование подтипов
Шаг 7. Проектирование взаимоисключающих связей
Шаг 8. Проектирование производных атрибутов
Monday, August 12, 2019Проектирование реляционной базы данных Шаг 1.	Преобразование сущностей в таблицы.Шаг 2.	Преобразование атрибутов в столбцы. Шаг

Слайд 33Monday, August 12, 2019
Шаг 1. Преобразование сущностей в таблицы
Каждая простая

сущность преобразуется в таблицу. В качестве имени отношения используются иена

сущностей (возможно во множественном числе)

ER-схема

Отношения

Monday, August 12, 2019Шаг 1. Преобразование сущностей в таблицыКаждая простая сущность преобразуется в таблицу. В качестве

Слайд 34Monday, August 12, 2019
Шаг 2. Преобразование атрибутов в столбцы
Каждый атрибут

преобразуется в столбец с тем же именем. В этот момент

выбирается формат столбца.
Факультативные атрибуты становятся null-столбцами.
Обязательные атрибуты становятся not-null-столбцами

Отношение с атрибутами

ER-схема

Monday, August 12, 2019Шаг 2. Преобразование атрибутов в столбцыКаждый атрибут преобразуется в столбец с тем же именем.

Слайд 35Monday, August 12, 2019
Шаг 3. Пребразование связи один-к-одному во внешний

ключ (1)
Первичный ключ любой сущности используется в качестве внешнего ключа

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

CREATE TABLE PERSON ( PrsID NUMBER(3) PRIMARY KEY, ... );

CREATE TABLE AUTOBIOGRAPHY ( ... PrsID NOT NULL REFERENCES PERSON, ...);

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

Monday, August 12, 2019Шаг 3. Пребразование связи один-к-одному  во внешний ключ (1)Первичный ключ любой  сущности

Слайд 36Monday, August 12, 2019
Шаг 3. Пребразование связи один-к-одному во внешний

ключ (2)
Первичный ключ сущ- ности ЧЕЛОВЕК исполь- зуется в качестве внешнего ключа

в сущности АВТОБИОГРАФИЯ.
Внешний ключ стано- вится NOT NULL.

CREATE TABLE PERSON ( PrsID NUMBER(3) PRIMARY KEY, ... );

CREATE TABLE AUTOBIOGRAPHY ( ... PrsID NOT NULL REFERENCES PERSON, ...);

Monday, August 12, 2019Шаг 3. Пребразование связи один-к-одному  во внешний ключ (2)Первичный ключ сущ- ности ЧЕЛОВЕК

Слайд 37Monday, August 12, 2019
Шаг 3. Пребразование связи один-ко-многим во внешний

ключ
Ключ сущности у окончания «один» используется в качестве внешнего ключа

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

CREATE TABLE TICKET ( TickID NUMBER(3) PRIMARY KEY, ... );

CREATE TABLE COUPON ( ... TickID NOT NULL REFERENCES TICKET, ...);

Monday, August 12, 2019Шаг 3. Пребразование связи один-ко-многим  во внешний ключКлюч сущности у окончания  «один»

Слайд 38Monday, August 12, 2019
Шаг 4. Преобразование связей многие-ко-многим в сущности-связки
Каждая

из сущностей поро- ждает базовое отношение.
Создается третья сущность- связка, которая содержит внешние

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

CREATE TABLE TICKET ( TickID NUMBER(3) PRIMARY KEY, ... );
CREATE TABLE FLIGHT ( FlhtID NUMBER (3) PRIMARY KEY, ...);
CREATE TABLE LINK ( TickID REFERENCES TICKET, FlhtID REFERENCES FLIGHT, CONSTRAINT prk PRIMARY KEY (TickID, FlhtID);

Monday, August 12, 2019Шаг 4. Преобразование связей многие-ко-многим в  сущности-связкиКаждая из сущностей поро- ждает базовое отношение.Создается

Слайд 39Monday, August 12, 2019
Шаг 5. Представление уникальных идентификаторов ключами таблиц


Уникальнй идентифика- тор составляет первич- ный ключ.
Если в состав уникаль- ного идентификатора входит

кончание связи, то первчный ключ со- держит соответствую- щий внешний ключ

CREATE TABLE AIRCRAFT ( AirNo NUMBER(3) PRIMARY KEY, ... ); CREATE TABLE OFFICE ( OffID NUMBER (3) PRIMARY KEY, ...); CREATE TABLE SERVICE ( SrvDate DATE NOT NULL, Result CHAR(50), AirNo NOT NULL REFERENCES AIRCRAFT, OffID NOT NULL REFERENCES OFFICE, CONSTRAINT prk PRIMARY KEY (SrvDate, AirNo, OffID);

Monday, August 12, 2019Шаг 5. Представление уникальных  идентификаторов ключами таблиц Уникальнй идентифика- тор составляет первич- ный

Слайд 40Monday, August 12, 2019
Шаг 5. Представление уникальных идентификаторов столбцами-заменителями
Используется в

том случае, когда имеет-ся длинная цепочка вхождения окончаний связей в

первичные ключи.
В каждую создавае- мую таблицу вводит- ся дополнительный столбец, которому придается статус пе- рвичного ключа.
Всем уникальным ИД придаются ограниче- ния целостности UNIQUE, NOT NULL.

CREATE TABLE ROUTE ( RoID NUMBER(3)PRIMARY KEY, RoNO NUMBER(5)UNIQUE NOT NULL); CREATE TABLE ROUTE_FLIGHT ( FlID NUMBER(3) PRIMARY KEY, FlDate DATE NOT NULL, FlTime TIME NOT NULL, RoID NUMBER (3) REFERENCES ROUTE, CONSTRAINT unq UNIQUE (FlDate, FlTime, RoID)); CREATE TABLE BOARDING_PASS ( BPID NUMBER(3)PRIMARY KEY, BPDate DATE NOT NULL, BPTime TIME NOT NULL, FlID NUMBER(3) REFERENCES ROUTE_FLIGHT, CONSTRAINT unq2 UNIQUE (BPDate, BPTime, FlID));

Monday, August 12, 2019Шаг 5. Представление уникальных  идентификаторов столбцами-заменителямиИспользуется в том  случае, когда имеет-ся длинная

Слайд 41Monday, August 12, 2019
Шаг 6. Проектирование подтипов

Monday, August 12, 2019Шаг 6. Проектирование подтипов

Слайд 42Monday, August 12, 2019
Шаг 7. Проектирование взаимоисключающих связей

Monday, August 12, 2019Шаг 7. Проектирование взаимоисключающих  связей

Слайд 43Monday, August 12, 2019
Шаг 8. Проектирование производных атрибутов

Monday, August 12, 2019Шаг 8. Проектирование производных  атрибутов

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика