- •Базы данных
- •Лекция 1 Хранение данных Данные, информация
- •Системы хранения данных на основе файлов
- •База данных
- •Требования к субд
- •Администратор бд (абд)
- •Лекция 2 Модели данных Независимость данных
- •Модель, схема
- •Лекция 3 Ранние модели Иерархическая модель
- •Сетевая модель
- •Лекция 4 Пример базы данных, построенной на сетевой модели Постановка задачи
- •Диаграмма
- •Описание на яод
- •Лекция 5 Реляционная модель Принципы
- •Уточнения
- •Лекция 6 Методы хранения данных и доступа к ним
- •Последовательный метод
- •Прямой метод
- •Индексные методы
- •Индексно-последовательный метод
- •Индексно-произвольный метод
- •Инвертированные списки
- •Хеширование
- •Лекция 7 Реляционная алгебра: определения, изменение отношений
- •Изменение отношений во времени.
- •Лекция 8 Операции реляционной алгебры
- •Булевы операции
- •Выбор; свойства выбора
- •Проекция; свойства проекции
- •Лекция 9 Операции реляционной алгебры (продолжение) Соединение
- •Свойства соединения
- •Лекция 10 Операции реляционной алгебры (продолжение)
- •Деление
- •Постоянные отношения. Переименование атрибутов
- •Эквисоединение, естественное и -соединение
- •Реляционная алгебра. Полнота ограниченного множества операторов
- •Операторы расщепления и фактора
- •Лекция 11 Язык структурных запросов sql
- •Начальные понятия
- •Стандарт ansi
- •Типы данных
- •Интерактивный и встроенный sql
- •Синтаксис
- •Подразделы sql
- •Простейшие действия
- •Функции агрегирования
- •Группировка
- •Возможности форматирования
- •Лекция 12 Язык структурных запросов sql (продолжение) Соединение
- •Вложенные запросы
- •Связанные запросы
- •Предикаты, определенные на подзапросах
- •Объединение
- •Изменение базы данных
- •Лекция 13 Понятие о нормальных формах
- •1 Нормальная форма (1нф)
- •2 Нормальная форма (2нф)
- •3 Нормальная форма (3нф)
- •Нормальная форма Бойса-Кодда (нфбк)
- •4 Нормальная форма (4нф)
- •5 Нормальная форма (5нф) – проекция/соединение
- •Лекция 13 Проектирование данных Процессы проектирования
- •Концептуальное проектирование
- •Логическое проектирование
- •Средства создания модели
- •Лекция 14 Функциональные зависимости
- •Аксиомы вывода
- •Ориентированный ациклический граф вывода
- •Определение реляционной базы данных
- •Представление множества функциональных зависимостей
- •Лекция 15 Покрытия функциональных зависимостей
- •Лемма об эквивалентности фз
- •Неизбыточные покрытия
- •Посторонние атрибуты
- •Канонические покрытия
- •Структура неизбыточных покрытий
- •Оптимальные покрытия
- •3 Нормальная форма
- •Нормализация через декомпозицию и посредством синтеза
- •Нормальная форма Бойса-Кодда
- •Литература
3 Нормальная форма
Определение. Атрибут A называется транзитивно зависимым от X, если Y R XY, но нет ФЗ YX, YA и A XY.
Определение. Схема отношения R находится в третьей НФ относительно множества ФЗ F, если для каждого атрибута A значения adom(A) атомарны и ни один из непервичных атрибутов не является транзитивно зависимым от ключа для R.
Утверждение. Любая схема отношения, находящаяся в третьей НФ относительно некоторого множества ФЗ, находится во второй НФ относительно того же множества.
Схема БД R находится в третьей НФ относительно F, если каждая схема отношения из R находится в третьей НФ относительно F.
Нормализация через декомпозицию и посредством синтеза
Некоторую схему отношения R, не находящуюся в третьей НФ относительно множества ФЗ F, всегда можно разложить в схему БД, находящуюся в третьей НФ относительно F. Сейчас мы займёмся двумя алгоритмами, позволяющими это преобразование осуществить.
Предположим, что в R = (S, K) существует транзитивная зависимость Y от ключа. Тогда в R существует непервичный элемент A, такой, что в F имеются ФЗ KY, YA, но нет ФЗ YK и A KY. Пусть R1 = R – A и R2 = YA. Пусть K – множество выделенных ключей для R1, а {Y} – для R2. Если какой-то ключ K из K содержит A, то вместо K в K подставим K = K – A.
Для любого r(R), удовлетворяющего F, имеем r = R1(r) R2(r). Таким образом, одну транзитивную зависимость удалили.
Если в R1 или в R2 остались транзитивные зависимости, то можно осуществить декомпозицию (а именно так называется приведённый выше алгоритм) ещё раз.
К недостаткам алгоритма нормализации через декомпозицию можно отнести следующие:
Большую временную сложность;
Большее (чем, может быть, необходимо) число порождённых процессом частичных зависимостей и схем отношений;
То, что для построенной схемы БД изначальное множество ФЗ F может оказаться ненавязанным.
Процесс синтеза позволяет избежать этих неприятностей.
Нормальная форма Бойса-Кодда
Определение. Схема отношения R находится в НФ Бойса – Кодда относительно множества ФЗ F, если для каждого атрибута A значения adom(A) атомарны и никакой атрибут в R не зависит транзитивно ни от одного ключа R.
Литература
Астахова И.Ф., Толстобров А.П. SQL в примерах и задачах. Учебное пособие, 2002.
Атре Ш. Структурный подход к организации баз данных: Пер. с англ. – М.: Финансы и статистика, 1983. –317 с.
Вендров А.М. Практикум по проектированию программного обеспечения экономических информационных систем. – М.: Финансы и статистика, 2002.
Грабер М. Введение в SQL. – М.: «ЛОРИ», 1996. – 375 с.
Дейт К. Введение в системы баз данных, 8 изд.: Пер. с англ. – М.: Издательский дом «Вильямс», 2005.
Дейт К. Руководство по реляционной СУБД DB2: Пер. с англ. – М.: Финансы и статистика, 1988. –320 с.
Жоголев Е.А. Введению в технологию программирования. Конспект лекций. – М.: «ДИАЛОГ-МГУ», 1994. – 112 с.
Когаловский М.Р. Энциклопедия технологий баз данных. – М.: Финансы и статистика, 2002.
Кодд Э.Ф. Реляционная база данных: практическая основа эффективности. // Лекции лауреатов премии Тьюринга за первые двадцать лет 1966-1985. // Пер. с англ. – М.: Мир, 1993, с. 451-474.
Конноли Т. и др. Базы данных. Проектирование, реализация и сопровождение. Теория и практика. – М.: Addison-Wesley, 2001.
Крёнке Д. Теория и практика построения баз данных, 9 изд. – М.: Питер, 2005.
Лукин В.Н.,.Марасанов А.М, Ротанина М.В., Чернышов Л.Н / Под ред. Марасанова А.М.. Использование СУБД в прикладных программных системах. – М.: МАИ, 1996. – 56 с.
Марков А.С., Лисовский К.Ю. Базы данных. Введение в теорию и методологию: Учебник. – М.: Финансы и статистика, 2004.
Мейер Д. Теория реляционных баз данных: Пер. с англ.: – М.: Мир 1987. – 608 с.
Озкарахан Э. Машины баз данных и управление базами данных: Пер с англ. – М.: Мир, 1989.
Попов А.А. FoxPro 2.6. – М.: Финансы и статистика.
Роб П., Коронел К. Системы баз данных: проектирование, реализация и управление: Пер. с англ. – СПб.: БХВ-Петербург, 2004.
Тиори Т., Фрай Дж. Проектирование структур баз данных (в 2 томах): Пер. с англ. – М.: Мир, 1985.
Ульман Дж. Основы систем баз данных. – М.: Финансы и статистика, 1983.
Фаронов В.В., Шумаков П.В. Delphi 4. Руководство разработчика баз данных. – М.: «Нолидж», 1999.
Чен П. Модель "Сущность-Связь" – шаг к единому представлению данных. // СУБД, 1995, №3.