![](/user_photo/2706_HbeT2.jpg)
- •Тема: проектирование базы данных
- •1.Требования, предъявляемые к базе данных
- •2. Этапы жизненного цикла бд
- •3.Модель "сущность-связь" (er-модель)
- •3.Преобразование er-модели в реляционную модель
- •Правило 1
- •Правило 2
- •Правило 3
- •Правило 4
- •Правило 5
- •Определение 3нф
- •5. Этапы проектирования бд и их процедуры Процедуры концептуального проектирования
- •Процедуры логического проектирования
- •6. Семантическая объектная модель (сомд)
- •6. Case-средства для моделирования данных
Правило 5
Если связь типа 1:М и КП сущности на стороне М является необязательным, то необходимо построить три таблицы – по одной для каждой сущности и одну для связи. Первичный ключ сущности должен быть первичным ключом соответствующей таблицы. Таблица для связи должна иметь среди своих атрибутов ключи обеих сущностей.
Представим, что на ER-диаграмме связи 1:М КП сущности СЧЕТ является необязательным.
Для связи типа М:N КП сущности не имеет значения.
Правило 6
Если связь типа М:N, то необходимо построить три таблицы – по одной для каждой сущности и одну для связи. Первичный ключ сущности должен быть первичным ключом соответствующей таблицы. Таблица для связи должна иметь среди своих атрибутов ключи обеих сущностей.
E
R-диаграмма
связи М:N
имеется на рис. 1.
4. Нормализация таблиц
Нормализация таблиц – это процесс, позволяющий минимизировать избыточность данных.
Определение 1НФ
Таблица находится в 1НФ, если все ее поля содержат только неделимые значения.
На практике. Если в клетках столбца содержится несколько значений, то каждое из них следует представить отдельной записью.
Определение 2НФ
Таблица находится в 2НФ, если она удовлетворяет требованиям 1НФ и неключевые поля функционально полно зависят от первичного ключа.
Функциональная зависимость (ФЗ)– это семантическое понятие, отображающее определенную семантическую связь между полями таблицы.
Пусть (Х1, Х2,…,Хк) – множество полей, образующих первичный ключ.
Неключевое поле А функционально зависит от ключа, если каждой комбинации значений полей данного множества соответствует одно и только одно значение поля А. ФЗ обозначается так:
(Х1, Х2,…,Хк)®А
Неключевое поле А функционально полно зависит от ключа, если оно функционально зависит от ключа и не существует ФЗ А ни от какого подмножества множества (Х1, Х2,…,Хк).
Если существует ФЗ А от какого-либо подмножества этого множества, то А находится в частичной функциональной зависимости от первичного ключа.
На практике. Неключевые поля, находящиеся в частичной ФЗ от некоторого подмножества первичного ключа, удаляются из таблицы и помещаются в новую таблицу совместно с подмножеством первичного ключа, от которого они зависят.
Определение 3нф
Таблица находится в 3НФ, если она удовлетворяет требованиям 2НФ и не содержит транзитивных зависимостей.
Транзитивной зависимостью называется функциональная зависимость между неключевыми атрибутами.
Табельный номер работника (ТАБ_Н) |
Должность (ДОЛЖ) |
Оклад (ОКЛ) |
-
ТАБ_Н
ДОЛЖ
ТАБ_Н
ОКЛ
5. Этапы проектирования бд и их процедуры Процедуры концептуального проектирования
Определение сущностей и их документирование.
2. Определение связей между сущностями и их документирование.
3. Создание ER-модели предметной области.
4. Определение атрибутов и их документирование.
5. Определение доменов атрибутов и их документирование.
6. Определение первичных ключей для сущностей и их документирование.
7. Обсуждение концептуальной модели данных с конечными пользователями.