- •1. Основные требования к организации базы данных
- •2. Основные компоненты субд
- •3. Этапы проектирования баз данных
- •4. Модели данных. Классификация баз данных
- •5. Модель «сущность-связь». Основные понятия, область применения.
- •6. Иерархическая модель данных.
- •7. Сетевая модель данных
- •8. Реляционная модель данных. Элементы модели
- •9. Операции реляционной алгебры
- •10. Реляционное исчисление с переменными кортежами
- •11. Реляционное исчисление с переменными на доменах
- •12. Функциональные зависимости, аксиомы, правила вывода функциональных зависимостей
- •13. Избыточные функциональные зависимости, минимальное покрытие декомпозиции
- •Обобщённый алгоритм декомпозиции:
- •14. Нормальные формы схем отношений. 1нф 2нф.
- •15. 3Я нормальная форма
- •16. Нормальная форма Бойся - Кода(нфбк)
- •17. Многозначная зависимость. Аксиомы многозначной зависимости.
- •18. 4Я нормальная форма
- •19. 5Я нормальная форма
- •20. Соединение без потерь, сохраняющих зависимость
- •21. Условия отсутствия потерь при соединениях
- •22. Метод в Табло
- •23. Создание и модификация, перемещение бд. (FoxPro)
- •24. Создание индексов
- •25. Поиск и сортировка, ускоренный поиск (на примере субд FoxPro).
- •26. Язык запросов sql. Основные категории
- •27. Структурированный язык запросов sql, описание данных, таблиц, типы данных, целостность данных.
- •28. Структурированный язык запросов sql, операторы манипулирования данными, курсор.
- •29. Язык запросов sql. Тип связывания
- •30. Язык запросов sql. Многотабличные запросы
- •31. Структурированный язык запросов sql, операции изменения и обновления бд.
- •32. Структурированный язык запросов sql, индексы.
- •33. Структурированный язык запросов sql, определение пользовательских представлений.
- •34. Файловые структуры для хранения информации в базах данных
- •35. Файлы прямого и последовательного доступа
- •36. Плотный, неплотный индекс
- •37. Инвертированные списки
- •38. Модель «клиент-сервер» в технологии бд.
- •39. Модель файлового сервера
- •40. Модель удаленного доступа к данным (достоинства и недостатки).
- •41. Модель сервера бд (достоинства и недостатки).
- •42. Модель сервера приложений (достоинства и недостатки).
- •43. Транзакции (свойства, способы завершения, журнал).
- •44. Защита бд, методы обеспечения защиты данных.
8. Реляционная модель данных. Элементы модели
Определение. Элементы, информацию о которых сохраняем, называются объектами.
Определение. Совокупность однородных объектов называется набором объектов.
Определение. Свойства, характеризующие объект, называются атрибутами.
Определение. Описание логической структуры базы данных называется схемой.
Схема представляет собой таблицу типов используемых данных. Она содержит имена объектов и их атрибуты и указывает на существующую между ними связь.
Если схема содержит значения элементов данных, её называют экземпляром схемы. Запись - такая структура, в которую можно помещать конкретные значения данных. Экземпляр записи - запись с конкретным значением данных.
Термин схема используется для определения полной таблицы всех типов элементов данных и типов записей, хранимых в базе данных. Термином подсхема определяют описание данных, которое использует прикладной программист. На основе одной схемы можно составить много различных подсхем.
В основе РМД (реляционная модель данных) лежит математическая теория отношений.
Для представления данных математическое отношение используется двояко:
1). Для представления набора объектов,
2). Для представления связей между наборами объектов.
Для представления набора объектов атрибуты интерпретируются столбцами отношения. Множество допустимых значений атрибута интерпретируется соответствующим доменом. Каждый кортеж отношения выполняет роль описания отдельного объекта из набора. Само отношение выполняет роль описания всего набора объектов.
Массив данных, представленный набором реляционных структур, образует реляционную БД. Схема РБД(реляционная база данных) будет представлена набором схем отношений:
R1(А11, А21,..., Ак1);
R2(А12, А22,..., Аl2);
. . . . . . . . . . . . .
Rm(А1m, А2m,..., Аnm);
где Аij - имя атрибута, R j - имя отношения.
Одним из основных типов зависимостей, рассматриваемых в РБД, являются функциональные зависимости.
-
Элементы реляционной модели
Форма представления
Отношение
Таблица
Схема отношения
Заголовок таблицы
Кортеж
Строка таблицы
Сущность
Свойства объекта
Атрибут
Заголовок столбца
Домен
Множество допустимых значений атрибута
Значение атрибута
Значение поля записи
Первичный ключ
Один или несколько атрибутов
Тип данных
Тип значений элементов таблицы
9. Операции реляционной алгебры
В ней определяются основные операции над данными реляционного типа. Все операции можно разделить на традиционные над множествами и специализированные, вводимые для удобства поиска в БД.
К операциям 1-й группы относятся: объединения, пересечения, разность, декартово произведение. К операциям 2 -й группы относятся: проекция, ограничение, соединение, деление.
Объединение. В результате применения этой операции получается отношение. объединяющее кортежи, содержащиеся в исходных отношениях. Пусть имеем два исходных отношения R1 и R2 . Операция объединения этих отношений обозначается R1 R2:
R1 R2 = { r / r R1 или r R2 }.
Объединяемые отношения должны иметь одинаковые атрибуты ( должны быть объединимы ):
Пересечение. В данной операции ( обозначенной ) получают отношение, включающее кортежи, общие для R1 и R2:
R1 R2 = { r / r R1 и r R2 }.
Разность: В результате применения этой операции (R1 \ R2 ) получается отношение, содержащее кортежи, являющиеся кортежами отношения R1 и не являющиеся кортежами отношения R2:
R1 \ R2 = { r / r R1 и r R2 }.
Декартово ( прямое ) произведение. В этой операции ( R1 х R2 ) из m - местного отношения R1 и n - местного отношения R2 получают ( m + n ) - местное отношение. Причём первые m элементов представляют кортежи из отношения R1 , последние n элементов - кортежи из отношения R2:
R1 х R2 = {< r1, r2 > / r R1 и r R2 }.
Проекция: Операция проекции предназначена для изменения числа столбцов в отношении, то есть в том случае, когда из строк - кортежей требуется исключить какие-либо атрибуты. Обозначим через j1, j2,..., jn - номера столбцов n - местного отношения R. Операцию определения проекции отношения R обозначим через j1, j2,..., jn ( R ), а сама операция заключается в том, что из отношения R выбираются столбцы и компонуются в указанном порядке j1, j2,..., jn.
Ограничение. Ограничением называют такую операцию, в которой отношение исследуют по строкам и выделяют множество строк, удовлетворяющим заданным условиям.
Соединение. Операция соединения обратна операции проекции. Рассмотрим два отношения R1 (А, В) и R2 (В, С). Соединением отношений R1 и R2 (R1 R2 ) называют операцию, при которой соединяют два отношения, используя в качестве признака общий атрибут В:
R1 R2 = { <A,B,C> / <A,B> R1 и <B,C> R2 }.
Отношение R1 R2 является отношением с атрибутами <A,B,C>.
Деление. Рассмотрим деление m - местного отношения R1 на n - местное отношение R2.
Пусть из общего количества m атрибутов отношения R1 выделим несколько атрибутов: A,B,...,F и из них составляем список, обозначив его через M. Набор значений атрибутов из М столбцов можно рассмотреть как проекцию отношения R на список атрибутов М, то есть М (R1). Тогда через М будут обозначаться атрибуты дополнительные к М, то есть атрибуты отношения R1, не вошедшие в список М, и соответственно значения атрибутов из списка М определяются М (R1).
Операцию деления можно определить так:
R1 [M N] R2 = М (R1) \ М ((М (R1) N (R2)) \ R1 },
где М - это проекция отношения на атрибуты списка М.
