Содержание
- Реляционная модель данных
- Отношение
- Кортежи
- Представление null'ов
- Отличия таблиц и отношений
- Ключи
- Надключи
- Ключи
- Требования к ключам
- Естественные и суррогатные ключи
- Выбор ключей
- Функциональные зависимости
- Определение и примеры
- Замыкание множества функциональных зависимостей
- Эквивалентность множеств функциональных зависимостей
- Правила вывода функциональных зависимостей
- Замыкание множество атрибутов
- Неприводимые множества функциональных зависимостей
Экзаменационные вопросы
- Реляционная модель данных. Ключи
- Функциональные зависимости: замыкание, эквивалентность и правила вывода
- Функциональные зависимости: замыкание атрибутов, неприводимые множества функциональных зависимостей, их построение
Практические навыки
- Выделение надключей и ключей отношения
- Определение функциональных зависимостей в отношении
- Построение замыкания множества атрибутов
- Построение неприводимого множества функциональных зависимостей, эквивалентного данному
Библиография
- Дейт К. Введение в системы баз данных (главы 9 и 11)
- Уидом Д., Ульман Д. Основы реляционных баз данных (глава 3)
- Armstrong W.W. Dependency Structures of Data Base Relationships
- Fagin R. Functional Dependencies in a Relational Database and Propositional Logic
- Beeri C., Fagin R., Howard J. A complete axiomatization for functional and multivalued dependencies in database relations
- Maier D. Minimum covers in the relational database model
Домашнее задание 3. Функциональные зависимости в БД «Университет»
Дано отношение с атрибутами StudentId, StudentName, GroupId, GroupName, EdProgId, EdProgName, Semester, CourseId, CourseName, LecturerId, LecturerName, Mark.
- Найдите функциональные зависимости в данном отношении.
- Найдите все ключи данного отношения.
-
Найдите замыкания множеств атрибутов:
- GroupId, CourseId, Semester;
- StudentId, CourseId, Semester;
- StudentId, LecturerId, Semester;
- EdProgId, Semester;
- GroupName, StudentId;
- GroupName, LecturerId.
- Найдите неприводимое множество функциональных зависимостей для данного отношения.
Примечания
-
Не требуется поддержка:
- нескольких университетов;
- дисциплин по выбору;
- дисциплин с необычным распределением по группам (таких как физическая культура и иностранный язык);
- переводов между группами;
- исторических данных;
- несколько преподавателей дисциплины в группе;
- студентов-преподавателей;
- нескольких оценок по одной дисциплине.
Форма для сдачи ДЗ. Проверка проводится в полуавтоматическом режиме, поэтому строго соблюдайте указанные форматы.
В рамках проекта:
- Определите набор атрибутов, необходимых для проекта, и определите отношения на них.
- Найдите функциональные зависимости полученных отношений.
- Найдите все ключи полученных отношений.
- Найдите неприводимые множества функциональных зависимостей для полученных отношений.