Similar presentations:
Экспресс - контроль
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.
супертипподтип
database