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