0% нашли этот документ полезным (0 голосов)
7 просмотров42 страницы

ERmodel

Загружено:

CaptainPissOff
Авторское право
© All Rights Reserved
Мы серьезно относимся к защите прав на контент. Если вы подозреваете, что это ваш контент, заявите об этом здесь.
Доступные форматы
Скачать в формате PPT, PDF, TXT или читать онлайн в Scribd
0% нашли этот документ полезным (0 голосов)
7 просмотров42 страницы

ERmodel

Загружено:

CaptainPissOff
Авторское право
© All Rights Reserved
Мы серьезно относимся к защите прав на контент. Если вы подозреваете, что это ваш контент, заявите об этом здесь.
Доступные форматы
Скачать в формате PPT, PDF, TXT или читать онлайн в Scribd

ER-модель

(entity-relationship)
Модель «Сущность-
связь»
Работа с базой данных
начинается с построения
модели предметной области.
 Наиболее распространенной
является ER-модель (entity-
relationship model) (или модель
«Сущность-связь»).
Элементы модели
«сущность-связь»
Сущность
- Класс сущностей
- Экземпляр сущности
Атрибуты
- Композитные атрибуты
- Многозначные атрибуты
Идентификаторы
- Уникальные/неуникальные
- Композитные
Связи
- Классы связей
- Экземпляры связей
- Рекурсивные связи
Элементы модели «сущность-
связь»
Сущность
Сущность (entity) – это некоторый объект,
идентифицируемый в рабочей среде
пользователя, нечто такое, за чем
пользователь хотел бы наблюдать.
ементы модели «сущность-свя
Класс сущностей (entity classes) – это
совокупность сущностей, описывается
структурой или форматом сущностей,
составляющих этот класс.

Экземпляр сущности (аn instance)


представляет конкретную сущность
Обычно класс сущностей держит множество
экземпляров сущности.
Элементы модели
«сущность-связь»
Пример сущности СТУДЕНТ
Еще раз…Базовые понятия:
Первичный ключ
Первичный ключ (primary key)
– это атрибут или группа
атрибутов, однозначно
идентифицирующих объект.

Первичный ключ может


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

Объект и его атрибуты


соединяются
ненаправленными дугами.
Связь «Один – к
одному»

 Один – к одному. Этот тип связи


означает, что каждому объекту первого
вида соответствует не более одного
объекта второго вида, и наоборот.
 Например: сотрудник может руководить
только одним отделом, и у каждого
отдела есть только один руководитель.
Связь «Один – ко
многим »

 Один – ко многим (или в обратную сторону


Многие – к одному). Этот тип связи означает,
что каждому объекту первого вида может
соответствовать более одного объекта второго
вида, но каждому объекту второго вида
соответствует не более одного объекта
первого вида.
 Например: в каждом отделе может быть
множество сотрудников, но каждый сотрудник
работает только в одном отделе.
Связь «Многие – ко
многим»

 Многие – ко многим. Этот тип связи


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

 Это сущность, которая не может быть


однозначно идентифицирована с помощью
собственных атрибутов, а только через связь с
другой сущностью.
 Пусть, например, номер сотрудника является
уникальным только в пределах отдела, т.е. в
разных отделах могут быть сотрудники с
одинаковыми номерами. Уникальной в данном
случае будет комбинация атрибутов
«НомерСотрудника, НомерОтдела». Сущность
«Сотрудник» является слабой.
Замечания по поводу
связи М:М

 Насамом деле этот тип связи представляет собой


«замаскированную» слабую сущность, которая
связана с другими двумя сущностями
идентифицирующими связями многие – к одному:
Бинарные, тернарные
связи
 Если связь соединяет две
сущности, она называется
бинарной.
 Связь может соединять более двух
сущностей, например, связь,
соединяющая три сущности,
называется тернарной:

Связь с арностью
более 2 обычно
имеет тип многие –
ко многим по
отношению ко всем
связанным
сущностям.
Элементы модели
«сущность-связь»
Атрибуты
Атрибуты (свойства) – описывают
характеристики сущности.

Пример композитного атрибута: Адрес,


состоящий из
группы атрибутов {Улица, Город, Индекс}.
Пример многозначного атрибута: атрибут Имя
студента сущности ПРЕПОДАВАТЕЛЬ, который
может содержать имена нескольких обучаемых им
студентов.
Элементы модели
«сущность-связь»
Идентификаторы
Идентификаторы (identifiers) – атрибуты,
с помощью которых экземпляры сущностей
именуются, или идентифицируются.
Если идентификатор является уникальным, его
значение будет указывать на один и только один
экземпляр сущности.
Если идентификатор является неуникальным,
его значение будет указывать на некоторое
множество экземпляров.
Идентификаторы, состоящие из нескольких
атрибутов, называются композитными
идентификаторами (composite identifiers).
Элементы модели
«сущность-связь»
Связи
Взаимоотношения сущностей выражаются
связями.
Классы связей (relationship classes) — это
взаимоотношения между классами сущностей.
Экземпляры связи (relationship instances) —
взаимоотношения между экземпля­рами сущностей
Степень связи (relationship degree) — число классов
сущностей, участвующих в связи.
Элементы модели
«сущность-связь»
Примеры различных степеней связи:
а – связь степени 2, б – связь степени 3.

Связи степени 2 весьма распространены, их часто


называют еще бинарными связями (binary
relationships).
Элементы модели
«сущность-связь»
Три типа бинарных связей
Обозначение средствами в UML- диаграммах:
Связь 1:1(«один к одному») обозначается
Связь 1:N («один к N» или «один ко многим») –
Связь N:M (читается «N к М» или «многие ко многим») –

Связь обладания в обобщенном виде, когда не указан конкретный тип


связи -

Числа внутри ромба, символизирующего связь, обозначают


максимальное количество сущностей на каждой стороне связи. Эти
ограничения называются максимальными кардинальными
числами, а совокупность из двух таких ограничений для обеих
сторон связи называется максимальной кардинальностью
(maximum cardinality) связи.
Элементы модели
«сущность-связь»
Пример бинарных связей: а – бинарная связь 1:1,
б – бинарная связь 1:N, в – бинарная связь N:M,
г – представление связи с помощью разветвлений.
Диаграммы «сущность-
связь»
Схемы бинарных связей, изображенных выше,
называются диаграммами «сущность-связь», или
ER-диаграммами (entity-relationship diagrams, ER-
diagrams).

Для указания минимальной кардинальности (minimum


cardinality) существует несколько способов. Один из них,
продемонстрирован ниже.
Связь с указанной минимальной кардинальностью
Диаграммы
«сущность-связь»
Связи между сущностями одного и того же класса
называются иногда рекурсивными связями
(recursive relationships).
Диаграммы «сущность-
связь»
Изображение атрибутов в диаграммах
«сущность-связь»
В некоторых версиях ER-диаграмм атрибуты
обозначаются эллипсами, соединенными с сущностью
или связью, которой они принадлежат.
Диаграммы «сущность-
связь»

Изображение свойств на диаграммах «сущость-


связь»:
а – указание на диаграмме; б – отдельное
перечисление.
Слабые сущности
Слабые сущности (weak entity) - сущности, которые
могут существовать в базе данных только в том
случае, если в ней присутствует сущность
некоторого другого типа.

Сущность, не являющаяся слабой, называется


сильной сущностью (strong entity).

Идентификационно-зависимые сущности
(ID-dependent entities) - это такие сущности,
идентификаторы которых содержат
идентификатор другой сущности.
Слабые сущности
Слабые сущности: а – пример слабой сущности,
б – пример идентификационно-зависимой сущности.
Слабые сущности
Чтобы сущность можно было отнести к разряду
слабых, она должна логически зависеть от другой
сущности.
Пример обязательных сущностей
Слабые
сущности
Многозначные атрибуты представляются в модели
«сущность-связь» путем создания новой слабой сущности и
построения связи вида «один ко многим».
Представление многозначных атрибутов с помощью
слабых сущностей
Подтипы сущностей

Иерархии генерализации имеют специальную характеристику,


называемую наследованием (inheritance), которая означает, что
подтипы классов сущностей наследуют атрибуты от надтипа.
Пример ER-
диаграммы
Пример ER-модели: Контора «Рога и
копыта»
Описание
 Контора задачи
«Рога и копыта» занимается коммерческой
деятельностью по реализации продукции, произведенной из рогов
и копыт, и предоставлению магических услуг.
 Сотрудник организации имеет ФИО, табельный номер, должность.
Сотрудники распределены по нескольким отделам. Каждый отдел
имеет номер, название и руководителя. Сотрудник не может
руководить более чем одним отделом.
 Организация работает с предприятиями-клиентами. Каждое
предприятие имеет название и адрес. С предприятием может
быть заключено несколько договоров.
 Договор характеризуется уникальным номером, датой и типом.
Каждый договор курирует некоторый сотрудник. По мере
реализации клиенту товаров и услуг по договору с некоторой
периодичностью выставляются счета.
 Счет характеризуется уникальным номером, датой выставления,
сроком оплаты и суммой, а также списком реализованных товаров
и услуг с указанием их количества. По неоплаченным счетам
начисляются пени. Счет может быть оплачен в несколько
приемов, каждый платеж характеризуется номером, датой и
суммой. Номер платежа уникален в пределах его счета. Цены на
товары и услуги могут изменяться со временем.
Пример ER-модели:
Контора «Рога и копыта»
Пример ER-модели:
«Музыканты»

Описание задачи
Необходимо разработать базу данных для хранения
информации о музыкантах, сочинениях и концертах.
 Музыкант характеризуется именем, датой рождения и
страной рождения.
 Сочинение включает информацию о названии,
композиторе и дате первого исполнения.
 Музыкант может играть на разных инструментах с
разной степенью квалификации.
 Из музыкантов-исполнителей формируются ансамбли.
Каждый ансамбль, кроме своих участников, содержит
информацию о названии, стране и руководителе.
 Наконец, исполнения произведений характеризуются
датой, страной, городом исполнения, а также
ансамблем, дирижером и собственно исполняемым
произведением.
Пример ER-модели:
«Музыканты»
Пример ER-модели:
«Аптечная сеть»
Еще примеры
на сайте
[Link]
l/[Link]
[Link]
ql/[Link]
[Link]
ql/[Link]
Описание предметной
области
АВТОБУС – это транспортное средство для перевозки людей.
Автобусный парк содержит определенное количество подвижных
единиц. Автобусы характеризуются маркой, государственным
номером, количеством посадочных мест. На маршруты выходят
иногда одни и те же автобусы, иногда разные. Значит, автобусы не
закреплены жестко за определенным маршрутом.
Водители отвечают за работоспособность автобуса, закрепленного за
ними. Обычно по два водителя, т.к. они работают в разные смены.
Бывают случаи, что водителю приходится выходить на линию
совсем на другом автобусе. Для диспетчера очень важно знать
фамилию, имя, отчество водителя, адрес его проживания и
телефон.
Диспетчер закрепляет за автобусами маршруты следования каждый
день, определяет в какую смену выходит водитель и на каком
автобусе. Указывает в маршрутном листе время выхода на линию и
время возвращения в парк. Каждый маршрут имеет свой номер,
пункт отправления и пункт назначения.
Из описания предметной области выявились три
сущности: автобусы, водители, маршруты.
Каждая сущность имеет свои атрибуты.
АВТОБУСЫ (государственный_номер_автобуса,
марка, количество мест)
ВОДИТЕЛИ (табельный_номер,
фамилия_водителя, имя_водителя,
отчество_водителя, населенный_пункт, улица,
дом, квартира, телефон)
МАРШРУТЫ (номер_маршрута,
пункт_отправления, пункт_назначения,
день_выхода, месяц_выхода, год_выхода,
время_выхода, время_возвращения)
Модель типа «Сущность-
связь»
БД Автобусный парк
Отвечает выезжает
Водитель Автобус Маршрут

Таб_номер Номер_авто Номер_марш

Фамилия_водителя Марка_авто Пункт_отпр

Имя_водителя Кол_мест Пункт_назн

Отчество_водителя День_выхода

Населен_пункт Месяц_выхода

Улица Год_выхода

Номер_дома Время_выхода

Номер_кв Время_возвр

телефон
Этапы проектирования БД
Предметная область Концептуальное
(восприятие, абстрагирование, проектирование
изучение и описание предметной области)
Информационные
потребности пользователя
Проектирование
концептуальной модели
(ER-диаграммы)

Логическое
Выбор СУБД проектирование

Проектирование
логической модели

Проектирование представления Физическое


данных в памяти ЭВМ проектирование
(физическая модель)

Оценка эксплуатационных характеристик


Задание:
 Выберите любую предметную область, для которой вы
будете создавать базу данных, и разработайте для нее
ER-модель.
 Достаточно использовать 4-5 сущностей.
 Для того, чтобы к вашей базе можно было
формулировать разннобразные запросы, обязательно
используйте числовые данные и даты.
 Модель можете рисовать на бумаге, в графическом
редакторе или в программе Word, а также можете
воспользоваться любой выбранной вами программой

Вам также может понравиться