Слайд 2
Почему Excel не база данных. Разные типы данных
Слайд 3
Почему Excel не база данных. Нечисловые знаки в
числовых столбцах 1/2
Слайд 4
Почему Excel не база данных. Нечисловые знаки в
числовых столбцах 2,2
Слайд 5
Почему Excel не база данных.
Данные в Excel
– повторные исследования в столбцах. Это затрудняет поиск, фильтрацию,
пакетные изменения, составление запросов и отчетов
Слайд 6
Почему Excel не база данных. Нечисловые знаки в
числовых столбцах 2,2
Слайд 7
Модель данных
Хранимые данные имеют определенную логическую структуру и
описываются некоторой моделью представления данных (модель данных).
Модель данных
– это совокупность взаимосвязанных по определенному правилу данных, поддерживаемых системой управления базой данных (СУБД).
В некоторых СУБД поддерживается одновременно несколько моделей данных.
Наиболее распространенная модель данных – реляционная.
Другие модели данных:
иерархическая,
сетевая,
постреляционная,
многомерная (узкоспециализированная),
объектно–ориентированная.
Слайд 8
Иерархическая модель данных
– отражает взаимосвязь информационных объектов по
уровням подчиненности, может быть представлена в графическом виде.
Свойства:
только
одна вершина первого уровня – корень
между узлами установлена связь «один–ко–многим» (1:М)
Основные элементы:
поле данных и сегмент (запись) данных - набор полей)
тип поля, тип сегмента – поименованная совокупность типов полей
экземпляр поля, экземпляр сегмента – значение поля или полей сегмента
Сегменты объединяются в ориентированный граф
Слайд 9
Пример иерархической модели данных. Тип сегмента
Пациент
ФИО (строка)
Социально-паспортные данные
(строка)
История болезни
Перевод
Анамнез (строка)
Назначение
Исход (строка)
Номер истории (целое)
…
Препарат (строка)
Дозировка (строка)
Длительность приема
(строка)
Дата (дата)
Отделение (строка)
Лечащий врач
ФИО (строка)
Квалификация (строка)
Наименование сегмента
Наименование полей
Слайд 10
Сетевая модель данных
в сетевой базе данных любой узел
может быть одновременно главным и подчиненным, отражает взаимосвязь информационных
объектов
«многие–ко–многим», М:М
Свойства:
каждый узел имеет имя (идентификатор)
узлы одного уровня образуют Класс
каждый узел может быть связан с произвольным количеством узлов другого уровня («многие–ко–многим») М:М
Слайд 11
Реляционная модель данных
Реляционная модель данных основывается на понятии
отношение (relation).
Отношение представляет собой множество элементов, взаимосвязанных между
собой. Наглядной формой представления отношений является двумерная таблица, состоящая из записей (строки) и полей (столбцы или атрибуты).
Все элементы одного столбца имеют одинаковый тип (числовой, символьный …), формат и смысл,
каждое поле имеет уникальное имя. Одинаковые записи отсутствуют, порядок записей – произволен.
В модели данных может быть несколько таблиц с различными значениями полей и записей, которые связываются между собой.
Слайд 13
Инфологическое проектирование
– это формализованное описание предметной области, создание
информационной модели объекта или системы объектов:
выделение объектов;
определение атрибутов
объектов;
выявление логических связей между объектами.
На этом этапе нет привязки к системе управления базами данных (СУБД)
Логическое (даталогическое) проектирование
преобразование инфологической модели в модель допустимую для выбранной системы управления базами данных (СУБД).
Разрабатывается схема базы данных (БД).
Физическое проектирование
относится к организации внешней памяти и структур хранения, используемых в данной операционной среде.
Слайд 14
Построение ER-моделей
ER-диаграмма: Entity(сущность) – Relation(связь)
Сущность – объект. На
диаграмме – существительное.
Атрибут – свойство объекта. На диаграмме –существительное.
Связь
между сущностями – зависимость между объектами, выраженная через свойства. На диаграмме – глагол.
Степень (кратность) связи 1:1, 1:M, M:M
Пример: Преподаватель ведет дисциплину
Слайд 15
Виды логической связи
Отношения, которые могут существовать
между сущностями:
1. один-к-одному, каждому экземпляру одной сущности
соответствует один экземпляр другой сущности;
2. один-ко-многим, каждому экземпляру одной сущности может соответствовать несколько экземпляров другой сущности;
3. многие-ко-многим, нескольким экземплярам одной сущности может соответствовать несколько другой сущности.
Слайд 16
(Не)Полное участие в связи
Полное: каждый экземпляр сущности участвует
по крайней мере в одном экземпляре связи
Полное
Неполное
Слайд 17
Элементы ER-диаграммы
Сущности – прямоугольники
Атрибуты – эллипсы. Ключевые (однозначно
определяющие сущность) подчеркиваются
Связи – ромбы
Доктор
Прием
Ведет
Табельный номер
Фамилия
Имя
Отчество
Квалификация
Дата-время
Помещение
Пациент
1
м
Слайд 18
Для создания, наполнения и обработки баз данных разработаны
специальные программные средства – системы управления базами данных (СУБД).
Система управления базами данных – совокупность программных и лингвистических средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных.
СУБД MS Access :
использует реляционную модель данных и характерный графический интерфейс Windows (титульная строка, главное меню, панель инструментов, поля для работы и строки состояния);
позволяет решать несложные информационные задачи (создание, редактирование, обработка данных);
создавать сложные приложения с помощью языка программирования Visual Basic for Application.
СУБД MS Access входит в состав офисного программного обеспечения Microsoft Office.
Слайд 19
Проблема плоских таблиц: избыточность данных
Сотрудники отделов =
(№_ИБ,
ФИО пациента, основной диагноз, температура, этаж, телефон)
Поля, связанные с
отделением, повторяются
этаж,
телефон
Слайд 20
При добавлении новой информации - в данном примере
новой истории болезни - нужно точно повторить информацию, связанную
с отделением (этаж, телефон).
СУБД не сможет проконтролировать ошибку ввода этажа или телефона.
Вставка
Слайд 21
при удалении записи, содержащей сведения о пациенте Сидорове
или Степанове удалятся сведения и об их отделениях, если
в таблице других пациентов на этих отделениях нет
Удаление
Слайд 22
изменение номера телефона терапевтического отделения придется производить в
3 записях,
если будет пропущена хотя бы одна запись,
то данные будут противоречивы
Обновление
Слайд 23
Выход: декомпозиция таблицы (в данном случае на две).
Декомпозиция
должны сохранять зависимости, тогда возможно соединение без потерь, то
есть восстановление исходного отношения после декомпозиции.
Решение
Слайд 26
Ключи и отношения
В один момент времени допускается работа
только с одной БД, в составе которой может быть
сколько угодно таблиц. Каждая таблица содержит ключ, который в дальнейшем используется для построения связей между таблицами.
Первичный ключ – это одно или несколько полей (столбцов), комбинация значений которых однозначно определяет запись в таблице. Первичный ключ не допускает значений Null и всегда должен иметь уникальный индекс. Первичный ключ используется для связывания таблицы с внешними ключами в других таблицах.
Внешний (вторичный) ключ - это одно или несколько полей (столбцов) в таблице, содержащих ссылку на поле или поля первичного ключа в другой таблице. Внешний ключ определяет способ объединения таблиц.
Отношением называется совокупность атрибутов, характеризующих объект.
Таблица отношений обеспечивает связь между таблицами, состоит только из внешних ключей, связанных с первичными ключами базовой таблицы.
Пример записи отношения: Сотрудники отделов =
(№_сотр, ФИО, должность, оклад, №_отд. корпус, телефон)
Слайд 27
Выявление потенциальных ключей отношений
Напомним: первичный ключ – атрибут,
однозначно определяющий строки таблицы.
Ключевой атрибут должен быть детерминантом для
остальных атрибутов отношения.
Неключевые атрибуты отношения называются описательными.
Слайд 28
Детерминантов для остальных атрибутов может быть несколько, тогда
среди них выбирается один, который становится первичным ключом. (Например,
номер паспорта и ИНН)
В случае отсутствия атрибута-ключа в отношении создается суррогатный ключ, обычно это порядковый номер строки в таблице (поле счетчик).
Ключи могут быть составными, т.е. состоять из нескольких атрибутов. (Прием: дата, время + доктор)
Описательные атрибуты, не являющиеся первичным ключом (или его частью), должны быть функционально зависимы от ключа.
Слайд 29
НОРМАЛИЗАЦИЯ
Нормализация отношений – формальный аппарат ограничений на формирование
отношений, которое позволяет устранять дублирование данных, обеспечивает их непротиворечивость.
Слайд 30
Отношение находится в первой нормальной форме, если
на пересечении каждой строки и каждого столбца находится только
одно значение.
1НФ является обязательной
ОПРЕДЕЛЕНИЕ 1НФ
Слайд 32
ПОЛНАЯ ФУНКЦИОНАЛЬНАЯ ЗАВИСИМОСТЬ
А и В могут быть составными
Атрибут
В находится в полной функциональной зависимости от составного атрибута
А , если В функционально зависит от полного набора составного атрибута А и не находится в зависимости от его части.
Слайд 33
поставщик,
товар
количество
поставщик количество
товар
количество
поставщик, товар магазин
поставщик магазин
товар магазин
Слайд 34
находится в 1НФ
каждый описательный атрибут функционально полно
зависит от всего составного ключа.
Отношение Сессия (№_зк, дисциплина ,ФИО.,
группа, оценка)
ОПРЕДЕЛЕНИЕ 2НФ
Слайд 35
Ключ: №_зк (студент) и дисциплина. Описательный атрибут –
оценка.
Сессия (№_зк, дисциплина ,ФИО., группа, оценка)
Находится ли отношение Сессия
во 2НФ?
№зк ФИО
Дисциплина ФИО неверно
ФИО., группа зависят от части составного ключа, те от №_зк и не зависят от дисциплины.
Значит нет полной ФЗ и отношение Сессия не находится во 2НФ
Слайд 36
В новое отношение
Для приведения отношения Сессия, находящегося в
1НФ ко 2НФ применяется декомпозиция
Студент(№_зк, ФИО., группа)
Сессия(№_зк, дисциплина, оценка)
Слайд 37
ОПРЕДЕЛЕНИЕ 3НФ
находится во 2НФ
не имеет описательных атрибутов,
находящихся в транзитивной зависимости от первичного ключа
транзитивная зависимость наблюдается,
если один описательный атрибут зависит от ключа, а другой описательный атрибут зависит от первого описательного атрибута.
Описательный атрибут 2 находится в транзитивной зависимости от ключа
Слайд 38
Транзитивная зависимость
А,В,С атрибуты отношения R
Если А
В студент группа
а В
С группа староста
то А С студент староста
Слайд 39
Отношение Студент = (№ зк, дата рожд, группа,
староста)
ФИО
№ зач дата рожд
группа
староста
№ зач
группа ФИО
дата рожд
староста
Атрибут староста
находится в транзитивной зависимости от №_зк
Слайд 40
необходима декомпозиция
Студент= ( №_зк, ФИО, Дата рожд, Группа)
Группа=(№Группы,
староста )
Атрибуты, находящиеся в транзитивной зависимости удаляются из этого
отношения в новое вместе с копией детерминанта.
Слайд 41
Логическая модель
Построение схемы
Наличие связей
определяется природой реальных объектов, процессов, явлений.
СВЯЗЬ
1:1
один экземпляр одного объекта соответствует одному экземпляру другого объекта.
Такие объекты легко соединяются в одно отношение
Первичные ключи таких отношений идентичны.
Слайд 42
СВЯЗЬ 1:1
Исходная таблица разбивается на две таблицы с
одинаковым ключом, связь 1:1.
Разбиение производится с целью разделения
описательных атрибутов (секретные и доступные) или из других соображений, которые описываются при проектировании
Слайд 43
ПРИМЕР
Регистрационный номер
Название препарата
Англ. Название препарата
Лат. Название препарата
Форма выпуска
Состав
Упаковка
Производитель
Описание
Фармакологическое
действие
Показания к применению
Взаимодействие с другими лекарствами
Дозировка
Способ применения
Побочные действия
Противопоказания
Срок годности
Условия
хранения
Условия отпуска
Слайд 44
ПРЕПАРАТ
Регистрационный номер
Название препарата
Англ. Название препарата
Лат. Название препарата
Форма выпуска
Состав
Упаковка
Производитель
Срок
годности
ОПИСАНИЕ
Регистрационный номер
Описание
Фармакологическое действие
Показания к применению
Взаимодействие с другими лекарствами
Дозировка
Способ применения
Побочные
действия
Противопоказания
Условия хранения
Условия отпуска
1
1
Слайд 45
Связь 1:М
Одному экземпляру одного объекта соответствует несколько экземпляров
другого объекта (может быть даже в перспективе) Вторичные ключи
предназначены для связи таких таблиц.
Первичный ключ из главной таблицы повторяется в подчиненной таблицы для их связи.
В подчиненной таблице такой ключ называется вторичным или внешним.
Слайд 46
ПРИМЕР
ПРЕПОДАВАТЕЛЬ КАФЕДРА
Табельный номер № кафедры
ФИО
Название
Должность Факультет
Степень Телефон
Слайд 47
КАФЕДРА
ПРЕПОДАВАТЕЛЬ
Табельный номер
ФИО
Должность
Степень
№ кафедры
№ кафедры
Название
Факультет
телефон
М
1
Слайд 48
Многозначные зависимости М:N
не могут реализовываться в реляционных БД,
вводится
дополнительный объект – связка, который будет подчиненным по отношению
к каждому из исходных.
Объект – связка отсутствует в инфологической модели,
Слайд 49
ПРИМЕР
Доктор Мед. услуга
табельный № доктора
Код услуги
ФИО
Наименование
Должность
Уч. степень
Доктор может оказывать много различных медицинских услуг.
Мед. услуга оказывается разным пациентам
Связь многие ко многим
Слайд 50
СОЗДАНИЕ ОБЪЕКТА СВЯЗКИ
( оказанная мед услуга)
доктор мед услуга
1
1
М М
Таб. № покупателя
фио
адрес
Код услуги
наименование
Таб. №доктора
код услуги
дата оказания
проданный товар