Слайд 1Лекция №1 Методы проектирования БД
Слайд 2Вопросы:
Классификация БД
Метод нормализации
Метод «Сущность – связь»
Пример проектирования БД
Слайд 7 Элементы реляционной модели БД
Слайд 8Способ хранения не нормализованных данных в базе данных bdUchet
Слайд 9Способ хранения нормализованных данных в базе данных в базе данных
bdUchet_N
Слайд 10 ER- диаграмма базы данных bdUchet_N
Слайд 11Перечень требований к структуре БД
Первичные ключи отношений должны быть
минимальными
Число отношений базы данных должно по возможности давать наименьшую
избыточность данных
Число отношений базы данных не должно приводить к потере производительности системы
Данные не должны быть противоречивыми, т.е. при выполнении операций включения, удаления и обновления данных их потенциальная противоречивость должна быть сведена к минимуму
Схема отношений базы данных должна быть устойчивой, способной адаптироваться к изменениям при ее расширении дополнительными атрибутами
Данные должны правильно отражать состояние предметной области базы данных в каждый конкретный момент времени (требование актуальности данных).
Слайд 12Исходная база данных «Преподаватель»
Слайд 13Требования по приведению БД к 1 НФ
Отношение находится в первой
нормальной форме (1НФ), если все атрибуты отношения являются простыми (требование
атомарности атрибутов в реляционной модели), т.е. не имеют компонентов.
Каждый простой атрибут должен иметь свою колонку в таблице. Однако это часто приводит к дублированию данных в отношении.
Типичным примером не атомарности атрибута являются повторяющиеся группы, представляющие массив значений атрибута.
Слайд 15Требования по приведению БД к 2 НФ
Функциональные зависимости
Атрибут В функционально
зависит от атрибута А, если каждому значению А соответствует в
точности одно значение В. (Математически функциональная зависимость В от А обозначается записью А->В.)
Составным потенциальным первичным ключом ключом называется ключ однозначно определяющий уникальность записи и состоящий из нескольких атрибутов.
Частичной функциональной зависимостью называется зависимость не ключевого атрибута от части составного потенциального первичного ключа
Pasport
Predmet
Groups
Fam
Dolgn
Oklad
Stag
N_stag
Слайд 16Требования по приведению БД к 2 НФ
Pasport
Predmet
Groups
Fam
Dolgn
Oklad
Stag
N_stag
Вторая нормальная форма. Отношение
находится в 2НФ, если оно находится в 1НФ и в
нем устранены частичные зависимости, т. е. каждый не ключевой атрибут функционально полно зависит от первичного ключа
Слайд 18Требования по приведению БД к 3 НФ
Pasport
Dolgn
Oklad
Stag
N_stag
Третья нормальная форма. Отношение
находится в 3НФ, если оно находится во 2НФ и в
нем устранены транзитивные зависимости
Транзитивной зависимостью называется такая зависимость, при которой для атрибутов А, В, С выполняются условия А->В и B->С, но обратная зависимость отсутствует
Слайд 20Требования по приведению БД к усиленной нормальной форме
Pasport
Fam
НФБК Отношение
находится в БКНФ, если оно находится в ЗНФ и в
нем отсутствуют зависимости атрибутов составного ключа от не ключевых атрибутов.
Слайд 21База данных приведенная к усиленной нормальной форме (форма Байса -
Кодда)
Слайд 22Правило 1. Если степень связи 1:1 и класс принадлежности обеих
сущностей обязательный, то формируется одно отношение. Первичным ключом этого отношения
может быть ключ любой из двух сущностей.
Слайд 23Правило 2. Если степень связи 1:1 и класс принадлежности одной
сущности обязательный, а второй - необязательный, то под каждую из
сущностей формируется по отношению с первичными ключами, являющимися ключами соответствующих сущностей. Далее к отношению, сущность которого имеет обязательный КП, добавляется в качестве атрибута ключ сущности с необязательным КП.
Слайд 24Правило 3. Если степень связи 1:1 и класс принадлежности обеих
сущностей является необязательным, то необходимо использовать три отношения. Два отношения
соответствуют связываемым сущностям, ключи которых являются первичными в этих отношениях. Третье отношение является связным между первыми двумя, поэтому его ключ объединяет ключевые атрибуты связываемых отношений.
Слайд 25Правило 4. Если степень связи между сущностями 1:М (или М:1)
и класс принадлежности М-связной сущности обязательный, то достаточно формирование двух
отношений (по одному на каждую из сущностей). При этом первичными ключами этих отношений являются ключи их сущностей. Кроме того, ключ 1-связной сущности добавляется как атрибут (внешний ключ) в отношение, соответствующее М-связной сущности.
Слайд 26Правило 5. Если степень связи 1:М (М:1) и класс принадлежности
М-связной сущности является необязательным, то необходимо формирование трех отношений Два
отношения соответствуют связываемым сущностям ключи которых являются первичными в этих отношениях. Третье отношение является связным между первыми двумя (его ключ объединяет ключевые атрибуты связываемых отношений).
Слайд 27Правило 6. Если степень связи сущностей М:М, то независимо от
класса принадлежности формируются три отношения. Два отношения соответствуют связываемым сущностям
и их ключи являются первичными ключами этих отношений. Третье отношение является связным между первыми двумя, а его ключ объединяет ключевые атрибуты связываемых отношений.
Слайд 28Этапы проектирования БД
Выделение сущностей и вида связей между ними
Описание ключевых
атрибутов и связей между отношениями
Добавление в отношения неключевых атрибутов
Применение по
мере необходимости метода нормальных форм
Слайд 29Постановка задачи
Требуется разработать проект базы данных производства по изготовлению мебели.
Информация
в базе данных должна учитывать:
Определенные анкетные данные работников
Занимаемую должность
(с учетом карьерного роста)
Получаемую зарплату
Участие работника в процессе изготовления мебели
Слайд 30Выделение сущностей и связей
T_People
(Работник)
T_dolgn
(Должность)
T_Obrazov
(Образование)
T_zarplata
(Зарплата)
T_Tovar
(Продукция)
T_PD
(Занимает)
T_PO
(Имеет)
T_PZ
(Получает)
T_PT
(Производит)
М
М
М
М
1
М
М
М
Слайд 31Описание ключевых атрибутов и уточнение связей
Слайд 32Добавление неключевых атрибутов
(работник-должность)
Слайд 33Добавление неключевых атрибутов
(работник-образование)
Слайд 34Добавление неключевых атрибутов
(работник-зарплата)
Слайд 35Добавление неключевых атрибутов (товар)
Слайд 36ER –диаграмма приведение отношения T_tovar к 2НФ
Слайд 37Приведение отношения T_tovar к 2НФ