Файл: Проектирование баз данных Основная цель проектирования баз данных Проектирование базы данных.pptx

ВУЗ: Не указан

Категория: Решение задач

Дисциплина: Не указана

Добавлен: 12.12.2023

Просмотров: 77

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
  • Основная цель проектирования баз данных.
  • Этапы проектирования баз данных.
  • Нормализация отношений. Три нормальные формы.
  • ER-модель.
Проектирование баз данныхОсновная цель проектирования баз данныхПроектирование базы данных – это сложный процесс, связанный с задачами создания эффективной информационной системы.Цель проектирования БД:
  • Обеспечение полноты сведений о предметной области.
  • Обеспечение достоверности и целостности.
  • Эффективность функционирования.
  • Обеспечение ограничений на объёмы памяти.
  • Защита данных.
  • Простота в эксплуатации.
  • Обеспечение удобства доступа к данным пользователя.
  • Возможность развития.
Этапы проектирования баз данныхЭтапы проектирования:
  • Анализ предметной области
  • Концептуальное проектирование
  • Логическое проектирование
  • Физическое проектирование
Этапы проектирования баз данныхКонцептуальное проектирование – это построение семантической модели предметной области.
  • Описание информационных объектов, или понятий предметной области и связей между ними.
  • Описание ограничений целостности, т.е. требований к допустимым значениям данных и к связям между ними.
Восходящий и нисходящий подходыВосходящий подход предусматривает выделение необходимых атрибутов, которые надо сохранить в базе данных. Затем выделенные атрибуты группируются в сущности, для которых впоследствии создается таблицы.Нисходящий подход подразумевает выявление сущностей. Затем происходит анализ сущностей, выявляются связи между ними, а потом и атрибуты сущностей.Этапы проектирования баз данныхЛогическое проектирование – создание схемы базы данных на основе конкретной модели данных, например, реляционной модели данных.Физическое проектирование – создание схемы базы данных для конкретной СУБД. Нормализация отношенийНормализация отношений – это правила формирования отношений, которые позволяют устранить дублирование, противоречивость хранимых в базе данных сведений.
Нормализация представляет собой процесс разделения данных по отдельным связанным таблицам.Атрибут — свойство сущности (поле таблицы).Домен атрибута — множество допустимых значений, которые может принимать атрибут.Кортеж — множество допустимых значений атрибутов, которые описывают некоторую сущность (строка таблицы).Отношение — конечное множество кортежей (таблица).Схема отношения — конечное множество атрибутов, определяющих некоторую сущность (структура таблицы).Проекция — отношение, полученное из заданного путём удаления и/или перестановки некоторых атрибутов.Нормализация отношенийНормализация основывается на наличии функциональной зависимости между атрибутами отношения.Атрибут В отношения функционально зависит от атрибута А того же отношения только в том случае, когда для каждого из различных значений атрибута А существует только одно значениеполя В.Нормализация отношенийНеобходимо создать БД о студентах факультета. Предварительно все сведения собраны в одной таблице со следующими полями:
  • Номер личного дела студента
  • Фамилия студента
  • Имя студента
  • Дата рождения студента
  • Номер группы, в которой учится студент
  • Название специальности
  • Семестр обучения
  • Название предмета, изучаемого студентом
  • Экзаменационная оценка
Нормализация отношенийНормализация отношенийПроблема обновления данных Нормализация отношенийПроблема добавления новых данных Нормализация отношенийНормальная формаСвойство отношения в реляционной модели данных, характеризующее его с точки зрения избыточности, потенциально приводящей к логически ошибочным результатам выборки или изменения данных.Цель нормализации: исключить избыточное дублирование данных, которое может приводить к аномалиям при редактировании кортежей (строк таблицы).Нормализация отношенийОтношение находится в Первой Нормальной форме

(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-диаграмму и описание базы данных проектной организации.Известно следующее:
  • Организация состоит из отделов.
  • В каждом отделе работают несколько сотрудников.
  • По каждому сотруднику хранятся сведения: о должности, стаже работы (дата начала деятельности в организации) и детях (ФИО, дата рождения ребенка).
  • Сотрудники организации выполняют проекты. Каждый сотрудник может участвовать в одном или нескольких проектах, либо не участвовать ни в одном проекте.
  • Проекты состоят из нескольких заданий.
  • Задания имеют один из статусов: «в разработке» или «выполнено».
  • Проекты поручают заказчики.

  • Дополнительно:
  • У каждого сотрудника имеется уникальный табельный номер и ФИО.
  • Каждый отдел имеет уникальный номер и название.
  • Каждый проект имеет уникальный номер и наименование.
  • Каждое задание проекта имеет наименование, краткое описание и номер, уникальный в пределах этого проекта.
  • Заказчики проектов – это организации и предприятия.