Экспресс - контроль
Модели реляционной базы данных. Модель «сущность-связь»
КЛАССИФИКАЦИЯ МОДЕЛЕЙ ДАННЫХ
КЛАССИФИКАЦИЯ МОДЕЛЕЙ ДАННЫХ
иерархическая система
Инфологическое моделирование
Инфологическая модель преподавателя
семантические модели
Модель сущность-связь
Модель сущность-связь
Модель реляционной базы данных сущность-связь
ER-модель
ER-модель
ER-модель
ER-модель
В модели «сущность»-«связь» различают две разновидности типов сущностей
Подтип сущности
Пример (база данных сотрудников учебного заведения)
Некоторые уникальные атрибуты:
супертип и подтип
Подтипы сущностей могут пересекаться или не пересекаться
Подтипы сущностей
Преимущества использования подтипов
Недостатки использования подтипов
 Виды атрибутов
 Виды атрибутов
Представление атрибутов на диаграммах ER-модели
Фрагмент ER-модели для типа сущности «Студент»
2.33M
Category: databasedatabase

Экспресс - контроль

1. Экспресс - контроль

ЭКСПРЕСС - КОНТРОЛЬ
1. Сколько уровней содержит модель системы управления базой
данных, предложенная ANSI ?
2. Назначение каждого уровня модели системы управления базой
данных, предложенная ANSI

2.

Самым важным
аспектом трехуровневой
архитектуры БД является то,
что логическая структура, с
которой взаимодействует
пользователь, отделена от
физической структуры БД,
с которой взаимодействует
машина.
Например: 1. Изменения
интерфейса для
пользователя не приводит к
изменению БД,
Или 2) вероятность
нарушения целостности
данных=>к 0 – т.к. у
пользователя НЕТ прав
доступа к физической среде.

3. Модели реляционной базы данных. Модель «сущность-связь»

МОДЕЛИ РЕЛЯЦИОННОЙ БАЗЫ
ДАННЫХ.
МОДЕЛЬ «СУЩНОСТЬ-СВЯЗЬ»
ЛЕКЦИЯ 3

4. КЛАССИФИКАЦИЯ МОДЕЛЕЙ ДАННЫХ

После исследования предметной области и детального
определения ЦЕЛИ и задач проектирования можно
переходить ко второму этапу, на котором проектируется база
данных.
На этом этапе используются формальные модели
данных, в которые нужно преобразовать инфологическую
модель. Такие модели, непосредственно используемые в
базах данных, называются даталогическими. На следующем
слайде показаны три вида даталогических моделей:
иерархические, сетевые и реляционные.

5. КЛАССИФИКАЦИЯ МОДЕЛЕЙ ДАННЫХ

6. иерархическая система

ИЕРАРХИЧЕСКАЯ СИСТЕМА
В иерархической системе элементы одного уровня не
связаны непосредственно между собой.
В ней нельзя непосредственно указать, что
участок механического цеха снабжает деталями участок
сборочного цеха.
Нужна горизонтальная связь между элементами одного
уровня
иерархии.
Поэтому
для
завода
лучше
подходит сетевая модель, в которой можно указать
непосредственную связь любого элемента с любым.

7. Инфологическое моделирование

ИНФОЛОГИЧЕСКОЕ МОДЕЛИРОВАНИЕ
•Существенной, если не главной частью ИС являются
хранящиеся в ней данные. При проектировании ИС данные
нужно представить в виде простой модели, отображающей
смысл данных, их взаимосвязь и не привязываться при этом к
конкретному типу базы данных. Такие модели получили
название инфологических.
• Инфологическую модель можно построить, опираясь только на
интуитивное представление о данных.

8. Инфологическая модель преподавателя

ИНФОЛОГИЧЕСКАЯ МОДЕЛЬ ПРЕПОДАВАТЕЛЯ

9. семантические модели

СЕМАНТИЧЕСКИЕ МОДЕЛИ
Чтобы облегчить процесс разработки
(проектирования) базы данных, используются так
называемые семантические модели данных.
Для разных видов баз данных наиболее
известной является ER-модель данных
(Entity-Relationship model).(Сущность-Отношение)

10. Модель сущность-связь

МОДЕЛЬ СУЩНОСТЬ-СВЯЗЬ
Первый вариант модели сущность-связь был предложен в 1976 г.
Питером Пин-Шэн Ченом.
В дальнейшем многими авторами были разработаны свои
варианты подобных моделей (нотация Мартина, нотация IDEF1X,
нотация Баркера и др.). Кроме того, различные программные средства,
реализующие одну и ту же нотацию, могут отличаться своими
возможностями.
По сути, все варианты диаграмм сущность-связь исходят из одной идеи
- рисунок всегда нагляднее текстового описания. Все такие
диаграммы используют графическое изображение сущностей
предметной области, их свойств (атрибутов), и взаимосвязей между
сущностями.

11. Модель сущность-связь

МОДЕЛЬ СУЩНОСТЬ-СВЯЗЬ
ВСЕ ВАРИАНТЫ диаграмм сущность-связь исходят из одной идеи
- рисунок всегда нагляднее текстового описания. Все такие
диаграммы используют графическое изображение сущностей
предметной области, их свойств (атрибутов), и взаимосвязей
между сущностями.

12. Модель реляционной базы данных сущность-связь

МОДЕЛЬ РЕЛЯЦИОННОЙ БАЗЫ ДАННЫХ
СУЩНОСТЬ-СВЯЗЬ
Лекция 3
Практическая работа № 2.1
ЖДУ ВОПРОСЫ
ПО ДАННОЙ ТЕМЕ

13. ER-модель

ER-МОДЕЛЬ
ER-модель (Entity-relationship model или Entityrelationship diagram) – это семантическая модель данных,
которая предназначена для упрощения процесса
проектирования базы данных.
Из ER-модели могут быть порождены все виды БД:
реляционные, иерархические, сетевые, объектные.
В основе ER-модели лежат понятия «сущность», «связь» и
«атрибут».

14. ER-модель

ER-МОДЕЛЬ
Для больших баз данных построение ER-модели
позволяет избежать ошибок проектирования,
которые чрезвычайно сложно исправлять, в
особенности, если база данных уже эксплуатируется
или на стадии тестирования.
ER-модель – это только концептуальный уровень
моделирования.

15. ER-модель

ER-МОДЕЛЬ
Диаграмма «сущность»-«связь» – это диаграмма,
которая представляет в графическом виде
сущности, атрибуты и связи.

16. ER-модель

ER-МОДЕЛЬ
Сущность в БД– это любой объект в БД, который можно выделить
исходя из сути предметной области для которой разрабатывается эта база
данных.
Пример 1. В базе данных книжного магазина можно выделить следующие
сущности:
• книга;
• поставщик;
• автор
• размещение в магазине.
Пример 2. В базе данных учета учебного процесса некоторого учебного заведения
можно выделить следующие сущности:
• студенты (ученики);
• преподаватели;
• группы;
• дисциплины

17. В модели «сущность»-«связь» различают две разновидности типов сущностей

В МОДЕЛИ «СУЩНОСТЬ»-«СВЯЗЬ» РАЗЛИЧАЮТ
ДВЕ РАЗНОВИДНОСТИ ТИПОВ СУЩНОСТЕЙ
Сильный тип
сущности
Слабый тип
сущности

18. Подтип сущности

ПОДТИП СУЩНОСТИ
• Подтипы сущностей вводятся в ER-модель с целью уменьшения общего
количества атрибутов каждой сущности. (н-р: специальность доктора)
• Каждая сущность имеет набор уникальных атрибутов. Однако, атрибуты
разных сущностей могут повторяться. Поэтому, нужно так разработать ERмодель, чтобы количество повторяемых атрибутов в разных сущностях было
минимальным или сведено к нулю. (н-р: ФИО пациента и доктора)
• Идея использования подтипа сущности состоит в том, что для всего
разнообразного набора сущностей выделяется супертип, который содержит
общую для всех типов сущностей информацию. Детали (тонкости) каждого
типа сущности выносятся по отдельности в несколько специализированных
подтипов. (Сущность: Клиенты компании; Подтипы: 1. физ.лицо(ФИО); 2.
юр.лицо(ИНН,название,№счёта…))

19. Пример (база данных сотрудников учебного заведения)

ПРИМЕР (БАЗА ДАННЫХ СОТРУДНИКОВ
УЧЕБНОГО ЗАВЕДЕНИЯ)
• сущность Администрация;
• сущность Преподаватель;
• сущность Вспомогательный персонал
сотрудники
Нижеследующие атрибуты являются общими для всех сущностей:
• «Фамилия»;
• «Имя»;
• «Отчество»;
• «Идентификационный номер в табеле».

20. Некоторые уникальные атрибуты:

НЕКОТОРЫЕ УНИКАЛЬНЫЕ АТРИБУТЫ:
• тип сущности «Администрация» имеет административную
ставку, название занимаемой должности и т.п.;
• тип сущности «Преподаватель» имеет количество
вычитанных часов, расценку за 1 час, категорию и т.п.;
• тип сущности «Вспомогательный персонал» имеет ставку
персонала, коэффициент выходного или невыходного дня
(если сотрудник работал по выходным дням) и т.п.

21. супертип и подтип

СУПЕРТИП И ПОДТИП

22. Подтипы сущностей могут пересекаться или не пересекаться

ПОДТИПЫ СУЩНОСТЕЙ МОГУТ ПЕРЕСЕКАТЬСЯ
ИЛИ НЕ ПЕРЕСЕКАТЬСЯ
• Если подтип одной сущности может подходить для подтипа другой сущности, то
это означает что подтипы сущностей пересекаются между собой. В противном
случае подтипы сущностей не пересекаются.
• Пример. В учебном заведении сотрудник, который занимает административную
должность (подтип Администрация) может быть преподавателем. То есть,
подтип сущности Администрация пересекается с подтипом
сущности Преподаватель.
• Однако, сотрудник из подтипа сущности Вспомогательный персонал не может
быть преподавателем. Поэтому подтип сущности Вспомогательный персонал не
пересекается с подтипом Преподаватель.

23. Подтипы сущностей

ПОДТИПЫ СУЩНОСТЕЙ

24. Преимущества использования подтипов

ПРЕИМУЩЕСТВА ИСПОЛЬЗОВАНИЯ ПОДТИПОВ
• избежание избыточности данных, поскольку каждый подтип содержит только
уникальную информацию. Это в свою очередь приводит к уменьшению размера
самой базы данных;
• упрощение установки ограничений для любого атрибута, который соответствует
столбцу таблицы реализующей конкретный подтип сущности;
• уменьшение ошибок при программировании операций над таблицей, которая
соответствует конкретному подтипу сущности;
• гибкость в модификации структуры базы данных. Не нужно модифицировать
таблицу супертипа в случае добавления/изменения структуры таблицы подтипа.
Это, в свою очередь, приводит к тому, что не нужно переделывать всю
программу управления базой данных.

25. Недостатки использования подтипов

НЕДОСТАТКИ ИСПОЛЬЗОВАНИЯ ПОДТИПОВ
в целом усложняется работа по разработке БД.
Трудности состоят в следующем:
• сложность в организации взаимодействия между главной и подчиненной
таблицами для реляционных баз данных;
• в таблицах подтипов нужно дополнительно вводить первичные ключи для
связывания с таблицей супертипа;
• запросы на языке SQL становятся более сложными, поскольку нужно
обрабатывать данные в связанных таблицах;
• сложность в обеспечении безопасного доступа пользователя к столбцам
таблицы.

26.  Виды атрибутов

ВИДЫ АТРИБУТОВ
• простые атрибуты. Это атрибуты, которые могут быть частью составных
атрибутов. Эти атрибуты состоят из одного компонента. Например, к простым
атрибутам можно отнести: код книги в библиотеке или курс обучения студента в
учебном заведении;
• составные атрибуты. Это атрибуты, которые состоят из нескольких простых
атрибутов. Например, адрес проживания может содержать название страны,
населенного пункта, улицы, номера дома;
• произвДНые атрибуты. Это атрибуты, значение которых формируется на основе
значений других атрибутов. Например, текущий курс обучения студента можно
вычислить на основе разности текущего года обучения и года поступления
студента.

27.  Виды атрибутов

ВИДЫ АТРИБУТОВ
• однозначные атрибуты. (всегда простые) Это атрибуты, которые
содержат только одно единственное значение для некоторой
сущности. Например, атрибут «Номер зачетной книги» для типа
сущности «Студент» однозначное, так как студент может иметь
только один номер зачетной книги (одно значение);
• многозначные атрибуты.(как правило составные) Это атрибуты,
которые могут содержать несколько значений. Например,
многозначный атрибут «Номер телефона» для сущности «Студент»,
так как студент может иметь несколько номеров телефона
(домашний, мобильный и т.д.);

28.

• простой атрибут (однозначный) может быть представлен доступным набором
базовых типов, которые есть в любом языке программирования. (int, integer, uint и
т.д.; float, double; строчные атрибуты типом string и т.д.;
• составной атрибут – это объект, который включает в себя несколько вложенных
простых атрибутов. В языках программирования объединение полей реализуется
структурами или классами;
• многозначный атрибут может быть реализован массивом или коллекцией
простых или составных атрибутов;
• произвольный атрибут реализуется дополнительным полем, которое
вычисляется при обращении к таблице. Такое поле называется вычислительным
полем (calculated field) и формируется на основе других полей таблицы;
• атрибут, который является первичным ключом может быть целочисленным,
строчным или иного порядкового типа. Наиболее часто, в качестве первичного
ключа выступает целый тип (int, integer).

29. Представление атрибутов на диаграммах ER-модели

ПРЕДСТАВЛЕНИЕ АТРИБУТОВ НА ДИАГРАММАХ
ER-МОДЕЛИ
Дата рожд
Тел:дом,раб,моб
возраст
Улица(массив)
№ дома, № кв

30.

31. Фрагмент ER-модели для типа сущности «Студент»

ФРАГМЕНТ ER-МОДЕЛИ ДЛЯ ТИПА
СУЩНОСТИ «СТУДЕНТ»
однозначный
однозначный
производныйны
й
многозначныйй
составной
составной

32.

супертип
подтип
English     Русский Rules