лаба 6 er diagram. Лекция6. Проектирование баз данных Основная цель проектирования баз данных Проектирование базы данных
Скачать 0.6 Mb.
|
Проектирование баз данных Основная цель проектирования баз данных Проектирование базы данных – это сложный процесс, связанный с задачами создания эффективной информационной системы. Цель проектирования БД:
Этапы проектирования баз данных Этапы проектирования:
Этапы проектирования баз данных Концептуальное проектирование – это построение семантической модели предметной области.
Восходящий и нисходящий подходы Восходящий подход предусматривает выделение необходимых атрибутов, которые надо сохранить в базе данных. Затем выделенные атрибуты группируются в сущности, для которых впоследствии создается таблицы. Нисходящий подход подразумевает выявление сущностей. Затем происходит анализ сущностей, выявляются связи между ними, а потом и атрибуты сущностей. Этапы проектирования баз данных Логическое проектирование – создание схемы базы данных на основе конкретной модели данных, например, реляционной модели данных. Физическое проектирование – создание схемы базы данных для конкретной СУБД. Нормализация отношений Нормализация отношений – это правила формирования отношений, которые позволяют устранить дублирование, противоречивость хранимых в базе данных сведений. Нормализация представляет собой процесс разделения данных по отдельным связанным таблицам. Атрибут — свойство сущности (поле таблицы). Домен атрибута — множество допустимых значений, которые может принимать атрибут. Кортеж — множество допустимых значений атрибутов, которые описывают некоторую сущность (строка таблицы). Отношение — конечное множество кортежей (таблица). Схема отношения — конечное множество атрибутов, определяющих некоторую сущность (структура таблицы). Проекция — отношение, полученное из заданного путём удаления и/или перестановки некоторых атрибутов. Нормализация отношений Нормализация основывается на наличии функциональной зависимости между атрибутами отношения. Атрибут В отношения функционально зависит от атрибута А того же отношения только в том случае, когда для каждого из различных значений атрибута А существует только одно значение поля В. Нормализация отношений Необходимо создать БД о студентах факультета. Предварительно все сведения собраны в одной таблице со следующими полями:
Нормализация отношений Нормализация отношений Проблема обновления данных Нормализация отношений Проблема добавления новых данных Нормализация отношений Нормальная форма Свойство отношения в реляционной модели данных, характеризующее его с точки зрения избыточности, потенциально приводящей к логически ошибочным результатам выборки или изменения данных. Цель нормализации: исключить избыточное дублирование данных, которое может приводить к аномалиям при редактировании кортежей (строк таблицы). Нормализация отношений Отношение находится в Первой Нормальной форме (1НФ), если в каждой ячейке всегда находится единственное атомарное значение, и никогда не может быть множества таких значений. Нормализация отношений Отношение не находится в 1НФ Нормализация отношений Отношение находится в 1НФ Нормализация отношений Отношение находится во Второй Нормальной форме (2НФ), если оно находится в Первой Нормальной форме и каждый не ключевой атрибут, неприводимо зависит от первичного ключа, являющегося составным. Нормализация отношений Причина избыточности: Специальность'>№, Фамилия, Имя, Дата рождения, Группа, Специальность – составной ключ. Семестр, Предмет, Оценка функционально зависят только от атрибута № (часть составного ключа). Нормализация отношений Нормализация отношений Отношения находятся во 2НФ Отношение находится в Третьей Нормальной форме (3НФ) – если оно находится во Второй Нормальной форме и у него нет функциональных зависимостей между не ключевыми атрибутами. Нормализация отношений Причина избыточности: Функциональная зависимость атрибута Специальность от не ключевого атрибута Группа Нормализация отношений Нормализация отношений Отношения находятся в 3НФ Нормализация отношений ER-модельПитер_Чен,_1976_годER-модель'>Определите избыточность ER-модель Питер Чен, 1976 год ER-модель (Entity-Relationship model, сущность-связь) – модель данных, позволяющая описывать концептуальные схемы предметной области. ER-модель (ER-диаграмма) используется при высокоуровневом проектировании баз данных. ER-модель ER-диаграмма Задание для создания ER-модели и описания базы данных смотрите в файле Техзадание.xlsx (вкладки Лист_1 и Лист_2) SITE – данные сайта id_site (PK) – id сайта url – URL-адрес ресурса ACCOUNT – аккаунт пользователя сайта id_account (PK) – id аккаунта id_site (FK) – id сайта login – логин пользователя password – пароль email – email пользователя WORKER – работники организации id_worker (PK) – id работника name – имя работника id_position (FK) – id должности Описание БД ACCOUNT_ACTION – действия, выполняемые на аккаунте работниками id_account_action (PK) – id действия id_account (FK) – id аккаунта id_action (FK) – id действия number – номер выполнения действия на аккаунте по порядку id_worker (FK) – id работника id_access (FK) – id доступа date_start – дата и время начала выполнения действия date_finish – дата и время окончания выполнения действия id_status (FK) – id статус выполнения действия работником (не выполнено/ выполнено), заполняется самим работником. SCHEDULE – график выполнения действий (вынесен в отдельную таблицу) id_account_action (FK) – id действия на аккаунте from – минимальный срок выполнения действия на аккаунте to – максимальный срок выполнения действия на аккаунте id_status (FK) – id статус, результат выполнения действия (ok/bad), выставляется автоматически, по истечении установленного срока. Справочные таблицы (заполняются админом) S_ACTION – список действий на аккаунте id_action (PK) – id действия name – наименование schedule_from – срок выполнения от (в днях) schedule_to – срок выполнения до (в днях) S_POSITION – занимаемая должность id_position (PK) – id должности name – наименование должности S_ACCESS – список вариантов доступа («могут видеть и изменять», «не могут видеть и не могут изменять», «могут видеть, не могут изменять») id_access (PK) – id доступа name – наименование доступа S_STATUS – статус выполнения действий id_status (PK) – id статуса name – наименование Лабораторная работа 8 Создать ER-диаграмму и описание базы данных проектной организации. Известно следующее:
Дополнительно: |