- •1 Основные понятия и определения
- •1.1Информационные системы и банки данных
- •1.2Назначение и основные компоненты банка данных
- •1.3Трех уровневая архитектура абстракций базы данных.
- •1.4Физическая и логическая независимость данных
- •1.5Администратор базы данных
- •1.6Системы управления базами данных
- •1.7Схема обмена данными при работе с базой данных
- •1.8Локальные информационные системы
- •1.9Информационные системы в сетях
- •2Модели данных концептуального уровня
- •2.1Иерархическая модель данных
- •2.2Сетевая модель
- •2.3Реляционная модель
- •2.4Постреляционная модель
- •2.5Многомерная модель
- •2.6Объектно-ориентированная модель
- •3Физические модели баз данных
- •3.1Файловые структуры, используемые в базах данных
- •3.2 Хешированные файлы
- •3.2.1Стратегия разрешения коллизий с областью переполнения
- •3.2.2Организация стратегии свободного замещения
- •3.3Индексные файлы
- •3.3.1Файлы с плотным индексом, или индексно-прямые файлы
- •3.3.2Файлы с неплотным индексом, или индексно-последовательные файлы
- •3.3.3Организация индексов в виде b-tree (в-деревьев)
- •3.4Моделирование отношений «один-ко-многим» на файловых структурах
- •3.5Инвертированные списки
- •3.6Модели бесфайловой организации данных
- •4Реляционная модель данных
- •4.1Основные определения
- •4.2Соглашения об отношениях в реляционных системах
- •4.3Классы отношений
- •4.3.1Классы отношений с точки зрения способов создания и хранения
- •4.3.2Классификация отношений с точки зрения их содержания
- •4.4Операции реляционной алгебры
- •4.4.1Основные понятия
- •4.4.2Базовые теоретико-множественные операции
- •4.4.3Специальные операции реляционной алгебры
- •4.4.4Связи между отношениями (таблицами)
- •4.5Реляционное исчисление
- •4.6Язык запросов по образцу qbe
- •4.7Структурированный язык запросов sql
- •4.7.1История развития sql
- •4.7.2Общая характеристика языка
- •4.7.3Структура sql
- •4.7.4Оператор выбора select
- •4.7.5Применение агрегатных функций и группировки
- •4.7.6Раздел order by и ключевое слово top
- •4.7.7Вложенные запросы
- •4.7.8Внутренние и внешние объединения
- •4.7.9Перекрестные запросы
- •4.7.10Операторы манипулирования данными
- •4.7.11Запросы на создание таблиц
- •4.7.12Использование языка определения данных
- •4.8Правила Кодда (требования к реляционным бд)
- •5Проектирование баз данных
- •5.1Этапы проектирования бд
- •5.2Проблемы проектирования реляционных баз данных
- •5.3Нормализация отношений
- •5.4Метод сущность-связь
- •5.5Средства автоматизации проектирования
- •5.5.1Основные определения
- •5.5.2Модели жизненного цикла
- •5.5.3Модели структурного проектирования
- •5.5.4Объектно-ориентированные модели
- •5.5.5 Классификация case-средств
- •6Защита информации в базах данных
- •6.1Общие подходы к обеспечению безопасности данных
- •6.2Назначение и проверка полномочий, проверка подлинности
- •6.3Средства защиты базы данных
- •7Базы данных в сетях
- •7.1Организация базы данных в локальной сети
- •7.2Модели архитектуры клиент-сервер
- •7.3Управление распределенными данными
- •8История развития баз данных
4.3Классы отношений
Существует несколько систем классификации, используемых в реляционных системах, отношений. Рассмотрим две системы классификации отношений. В основе первой лежат способы создания и хранения отношений, а в основе второй – содержание отношений.
4.3.1Классы отношений с точки зрения способов создания и хранения
Именованное отношение – это переменная типа отношение, у которой есть имя.
Базовое отношение – это именованное отношение, которое не является производным от других отношений.
Производное отношение – это отношение, определённое через другие именованные отношения (посредством реляционного выражения), и в конечном итоге через базовые отношения.
Выражаемое отношение – это отношение, которое можно получить из набора именованных отношений посредством некоторого реляционного выражения.
Каждое именованное отношение является выражаемым отношением, но необязательно, что выражаемое отношение имеет имя.
Множество всех выражаемых отношений – это объединение множества всех базовых отношений и множества всех производных отношений.
Представление - это именованное производное отношение. Представление, как и базовое отношение, является переменным отношениям.
Снимки – это именованные производные отношения (являются переменными отношениями). Создание снимка похоже на выполнение запроса, за исключением того, что результат такого запроса сохраняется в базе данных под некоторым именем как отношение, доступное только для чтения. Периодически (например, один раз в сутки) снимок обновляется.
Результаты запроса – неименованное производное отношение, является результатом вычисления некоторого реляционного выражения. База данных не обеспечивает постоянное хранение результатов запроса. Для этого результат запроса необходимо присвоить некоторому именованному отношению.
Промежуточным результатом называется неименованное производное отношение, являющееся результатом некоторого реляционного выражения.
Хранимое отношение – это отношение, которое поддерживается во внешней памяти.
4.3.2Классификация отношений с точки зрения их содержания
Отношения реляционной базы данных в зависимости от содержания подразделяются на два класса: объектные отношения и связные отношения.
Объектные отношения хранят данные о группах однородных объектов, явлений или процессов, имеющих однотипные характеристики. В объектном отношении ключ называют первичным, или просто ключом отношения.
Связное отношение хранит данные о связях между объектными отношениями. Связное отношение содержит ключи связанных объектных отношений и данные, количественно или качественно характеризующие связь. Ключи связных отношений называют внешними ключами, поскольку они являются первичными ключами других отношений. Реляционная модель накладывает на внешние ключи ограничение, называемое ссылочной целостностью. Это означает, что каждому значению внешнего ключа должен соответствовать кортеж объектного отношения. Без этого возможна ситуация, когда внешний ключ ссылается на объект, о котором ничего не известно.
Рассмотрим пример объектных и связных отношений.
Объектное отношение "Детали"
Номер детали |
Название детали |
401000 |
Втулка |
409857 |
Кронштейн |
Объектное отношение "Материалы"
Код материала |
Марка |
Вид материала |
181508 |
АД1Н |
Лист |
181440 |
АМГ2М |
Лист |
Связное отношение "Технологический процесс"
Номер детали |
Код материала |
Норма расхода материала |
401000 |
181508 |
23.78 |
409857 |
181440 |
112.6 |
В отношении "Детали" первичный ключ – номер детали. В отношении "Материал" первичный ключ – код материала. В отношении "Технологический процесс" внешний ключ – номер детали, код материала. Атрибут "Норма расхода материала на деталь" – количественная характеристика связи между деталью и материалом.
