Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
!35-39_Базы данных (Кара-Ушанов).doc
Скачиваний:
4
Добавлен:
01.04.2025
Размер:
1 Мб
Скачать
☆

35 (2) . Модель данных: тип структуры данных; ограничения целостности; действия с данными (проиллюстрировать на примере реляционной модели данных).

Поддержание ограничений целостности - это некоторые условия, которые лимитируют (определяют) структуру БД. Различают:

- внутреннее ограничение целостности (тип структуры данных):

- у отношения не может быть одинаковых строк кортежей

- порядок следования строк кортежей значения не имеет

- порядок следования атрибутов значения не имеет

- все значения атрибутов атомарны (неделимы)

- семантическое ограничение целостности. Его источник – семантика ПО. Контроль за этим отношением за разработчиком БД.

Различают:

  • ограничение целостности отношения. Проявляется в:

    • ограничении целостности атрибутов (доменов) – по типу и диапазону значений (например: числовой тип не может быть строкой; могут быть верхн и ниж границы). Контролируется это ограничение системой

    • ограничении целостности в виде функциональной зависимости между атрибутами (функциональные зависимость от ключа и неключевых атрибутов (детерминантов). Ключ – это и ключ и детерминант. Особая роль – функциональная зависимость от ключа (не может быть 2-х строк с одинаковым ключем). Ни при каких значениях ключ не может быть пустым.

  • Ограничение целостности отношения

    • ограничение ссылочной целостности. Имеет смысл, когда >= 2-х связанных таблиц. Связи бывают идентифицирующие и неидентифицирующие. Ссылки между связанными таблицами должны быть согласованными. В частности, запрещается создавать в дочерней таблице строку, для которой в родительской таблице нет ключа. Могут быть разрешены (запрещены) манипуляции: insert, update, delete:

действия с данными:

Реляционная алгебра включает в себя 8 операторов, разделенных на 2 группы:

  1. Операции, определенные над множествами:

- объединение

- пересечение

- вычитание

- декартово перемножение

  1. Операции над отношениями

- проекция

- селекция

- соединение

- деление

В дополнение к этим операциям:

- добавление

- удаление

- обновление

36.Реляционный подход к проектированию бд: нормализация отношений путем декомпозиции на основе анализа функциональных зависимостей.

Любая предметная область может быть представлена или в виде одного или нескольких связанных отношений.

Существует проблема:

- адекватность предметной области

- эквивалентность способа представления данных

- эффективность манипулирования данными ли в виде одной или нескольких таблиц

Представление в виде одной таблицы чревато осложнениями при манипуляции с данными (аномалии добавления, удаления, обновления).

Пример: (НС, П, С, ФИО, СП, Ф, О)

Аномалия добавления – пока студент не будет зачислен, его не будет в БД.

Аномалия удаления – при отчислении студента, коррекцию данных о нем надо будет править во многих строках.

Это происходит потому, что в отношениях представлена семантически разнородная информация.

Для корректирующих запросов (добавление, …) представление в виде одной таблицы нежелательно. Поэтому необходимо отношение развести по разным таблицам (декомпозиция).

Условия декомпозиции:

- декомпозиция считается выполненной корректно, если при выполнении ее соблюдаются два условия:

- обеспечение соединения без потери информации

- обеспечение сохранения зависимостей

- декомпозиция должна быть выполнена так, чтобы при соединении можно было бы восстановить исходную таблицу

Пусть есть отношения R1, R2 и связь {R1, R2}

Декомпозиция является корректной тогда и только тогда, когда

R1∩R2  R1 – R2

R1∩R2  R2 – R1

Общие

атрибуты

собственные

атрибуты

Функционально определяет

Декомпозиция может выполняться разными способами

Пример:

Учеба (НС, ФИО, СП, Ф, П, С, О)

2-я нормальная форма (НФ)

- избавились от неполной функциональной зависимости (функц полная завис-ть – когда все атрибуты, входящие в состав ключа однозначно определяют любой другой атрибут)се атрибуты\. неполной функциональной зависимости (функц полная завис-ть - когда 000000000000000000000000000000000000000000000

Можно разбить на 2 таблицы:

  1. персона (НС, ФИО, СП, Ф)

детерминанта (Δ): СП, НС

ключ: НС

  1. сессия (НС, П, С, О)

Δ: НС, П, С

ключ: НС, П, С

Определение: отношение находится во 2-й НФ, если оно находится в 1 НФ и при этом каждый неключевой атрибут функционально полно зависит от ключа

Персона ∩ сессия  НС