
- •Информация и данные
- •Основные понятия систем с базами данных
- •Пользователи информационной системы с БД
- •Требования к информационным системам с базами данных
- •Основные компоненты ИС с базами данных
- •Архитектура систем с базами данных. Понятие модели данных
- •Сущности и их свойства
- •Связи (отношения) между сущностями
- •Виды связей между сущностями
- •Еще о сущностях, их свойствах и связях между ними
- •Модели данных. Ранние подходы к организации баз данных
- •Основные понятия реляционной модели данных
- •Структуры данных реляционной модели. Реляционные отношения
- •Свойства отношений
- •Отсутствие в отношении одинаковых кортежей
- •Кортежи отношения не упорядочены (сверху вниз)
- •Атрибуты отношения не упорядочены (слева направо)
- •Значения всех атрибутов являются атомарными
- •Виды отношений
- •Реляционная база данных
- •Реляционная модель. Операции над данными
- •Реляционная алгебра
- •Пересечение отношений
- •Вычитание отношений
- •Декартово произведение отношений
- •Проекция
- •Выборка (ограничение)
- •Естественное соединение отношений
- •Деление
- •Реляционное исчисление
- •Примеры правильно построенных формул
- •Язык SQL
- •Отличие SQL от процедурных языков программирования
- •Формы и составные части SQL
- •Условия и терминология
- •Простейшие SELECT-запросы
- •Ограничения целостности в реляционной модели
- •Ограничения целостности уровня атрибута
- •Домены отношений
- •Отсутствующая информация или NULL-значения.
- •Ограничения целостности уровня кортежа
- •Ограничения целостности уровня отношения
- •Потенциальные, первичные, альтернативные ключи отношения
- •Потенциальные ключи и NULL-значения
- •Ограничения целостности уровня базы данных
- •Внешние ключи и NULL-значения
- •Правила ссылочной целостности
- •При обновлении кортежа в родительском отношении
- •При удалении кортежа в родительском отношении
- •При вставке кортежа в дочернее отношение
- •При обновлении кортежа в дочернем отношении
- •Средства обеспечения целостности данных в СУБД
- •Поддержка декларативных ограничений целостности в языке SQL
- •Проектирование базы данных
- •Функциональная зависимость
- •Нормализация отношений базы данных
- •Нормальные формы
- •Декомпозиция без потерь и функциональные зависимости
- •Первая и вторая нормальные формы.
- •Третья нормальная форма.
- •Многозначные зависимости и четвертая нормальная форма
- •Зависимости соединения и пятая нормальная форма
- •Итоговая схема процедуры нормализации
- •Структуры хранения данных и методы доступа
- •Хранение отношений и доступ к хранимым данным
- •Индексирование
- •Управление транзакциями и целостность баз данных
- •Транзакции и параллелизм
- •Проблемы, возникающие при параллельном выполнении транзакций
- •Проблема потери результатов обновления
- •Проблемы несовместимого анализа
- •Несовместимый анализ – неповторяемое считывание
- •Несовместимый анализ – фиктивные элементы (фантомы)
- •Собственно несовместимый анализ
- •Конфликты между транзакциями
- •Методы сериализации транзакций
- •Решение проблем параллелизма при помощи блокировок
- •Проблема потери результатов обновления
- •Проблема несовместимого анализа. Неповторяемое считывание
- •Фиктивные элементы (фантомы)
- •Собственно несовместимый анализ
- •Уровни изоляции. Объекты синхронизационных блокировок
- •Предикатные синхронизационные блокировки
- •Метод временных меток
- •Уровни изоляции.
- •Синтаксис операторов SQL, определяющих уровни изоляции
49
С математической точки зрения требование использования только нормализованных отношений позволяет (за счет более простой их структуры) упростить операторы для работы с отношениями и уменьшить их количество, не ограничивая возможности отображения информационного содержания предметной области, так как для любого ненормализованного отношения существует эквивалентная ему нормализованная форма.
6.4.Виды отношений
Различные отношения, встречающиеся в реляционных системах, можно классифицировать по различным признакам.
•Именованные отношения – это отношения, определенные в СУБД с помощью специального оператора создания отношения, и которым при этом присваиваются имена, уникальные в конкретной базе данных.
•Базовым отношением называется именованное отношение, которое является автономным и не определяется или не выводится из других отношений, т.е. которое не является производным (см. ниже).
•Производным отношением называется отношение, которое определено с помощью реляционного выражения через другие именованные отношения и, в конечном итоге, через базовые отношения, то есть получается в результате преобразования каких-либо других отношений.
•Представление (View) это именованное производное отношение. Представления виртуальны, они представлены в базе данных исключительно через свое определение в терминах других отношений. При изменении значений данных в исходных отношениях будут изменяться и данные, видимые через конкретное представление.
•Снимок (Snapshot) – это именованное производное отношение, которое, однако, в отличие от представлений (View) не виртуально, а представлено помимо своего определения через другие отношения реальными данными. Создание снимка похоже на выполнение запроса, результат которого сохраняется в базе данных под определенным именем.
•Отношение – результат запроса. Это неименованное производное отношение, являющееся результатом некоторого запроса к базе данных.
•Промежуточным результатом называется неименованное производное отношение, являющееся результатом некоторого реляционного выражения, вложенного в другое выражение.
•Хранимым отношением называется отношение, которое поддерживается в физической памяти, т.е. значения которого сохраняются на устройствах

50
долговременной памяти. Хранимое отношение это не обязательно базовое отношение, например, отношение-снимок (snapshot) также является хранимым отношением.
6.5.Реляционная база данных
Исходя из изложенного выше материала, термин реляционная база данных можно определить следующим образом [1].
Реляционная база данных – это база данных, воспринимаемая пользователем как набор нормализованных отношений различной степени.
Выражение воспринимаемая пользователем говорит о том, что идея реляционной модели относится к внешнему и концептуальному уровням системы, а не к внутреннему уровню.
Концептуальная привлекательность реляционной модели данных состоит в том, что в ней все данные предметной области представляются одним и только одним способом, с помощью достаточно простой структуры данных, которой являются отношения, и небольшим, четко описанным набором операций над ними. С помощью отношений представляются как сущности предметной области, так и связи между сущностями. При этом от пользователя скрыты явные указатели на файлы или записи данных, их физический или логический порядок и место расположения.
Проводя параллель между описанием предметной области в терминах сущностей, их свойств и связей между ними в модели сущность-связь и рассматриваемой реляционной моделью, можно отметить, что реляционное отношение является средством для представления множества экземпляров однотипных (обладающих одинаковым набором свойств) сущностей или связей моделируемой предметной области. Атрибуты отношения, вместе с доменами, на которых они определены, служат средством описания свойств сущностей или связей. Кортежи отношения представляют в этом случае множество конкретных экземпляров сущностей и связей одного типа. Значения ключевых атрибутов являются средством идентификации этих представляемых кортежами экземпляров.