- •Определение базы данных, отличие бд от других информац. Систем
- •Категории бд, физич и логический уровни
- •Ограничение целостности на данные
- •Неизбыточность и непротиворечивость данных
- •Защита от программных и аппаратных сбоев
- •Принцип независимых данных. Технологическая основа его реализации.
- •Системы управления базой данных субд и её структура
- •Последовательность обработки данных в субд при выполнении запроса
- •Языковые средства работы с бд
- •Элементы данных. Определение свойства и примеры
- •Характеристика типов связей. Избыточная связь. Правила склейки
- •Древовидные модели данных, определение и примеры
- •Зависимость данных от структуры
- •Сетевые модели данных. Преобразование сложных сетевых моделей к простым сетевым и древовидным
- •Общие данные, данные пересечения, изолированные данные
- •Определение реляционной модели данных
- •Преобразование древовидной и сетевой схемы бд к реляционному виду. Преимущество реляционных бд .
- •Бинарные базисные операции реляционной алгебры и их эквиваленты в sql
- •Унарные базисные операции ра и их эквиваленты в sql
- •Дополнительный набор операций ра и их выражение через базисный набор.
- •Свойства операций ра и формальная оптимизация запросов.
- •Аномалии представления данных
- •Определение функциональной зависимости (фз) и её свойства
- •Правила для фз. Замыкание множества (фз). Первичный ключ
- •Декомпозиция отношений и свойства декомпозиций.
- •Вторая нормальная форма. Правила построения и преимущества.
- •Третья нормальная форма. Правила и построения преимущества.
- •Синтез схемы бд. Проблемы обобщенного ключа
- •Факторы, влияющие на выбор физической организации бд
- •Классификация методов доступа
- •Структура данных в индексно-последовательный метод доступа. Преимущества и недостатки при операциях.
- •Отведенное свободное пространство и область переполнения
- •Методы хеширования.
- •Обработка переполнений в методах хеширования.
- •Определение и структура в-дерева. Поиск и в-дереве
- •Дополнение записи в в-дерево.
- •Удаление записи в в-дереве.
- •Мультисписок: структура и поиск записи.
- •Инвертированный файл: структура и поиск записей.
-
Преобразование древовидной и сетевой схемы бд к реляционному виду. Преимущество реляционных бд .
Чтобы привести иерархическую и сетевую схему БД к реляционной, нужно каждый класс описать в виде отдельной таблицы и установить связь между ними.
Преимущества реляционной модели:
-
Простая и удобная для пользователя схема данных в виде таблиц.
-
Улучшение логической (применения одной концептуальной модели различными пользователями) и физической независимости (возможность модифицировать физическую организацию данных).
-
Обеспечение пользователя языками высокого уровня, а не только процедурными.
-
Обеспечение методологического подхода к разработке БД.
Недостатком реляционной модели данных является избыточность по полям.
-
Бинарные базисные операции реляционной алгебры и их эквиваленты в sql
-
Объединение: R=R1 R2.
Результат операции R содержит кортежи из R1 и R2. Ограничения: а) k1=k2; б) схемы R1 и R2 должны совпадать; в) дублирующие кортежи включаются только один раз.
SQL: R1 UNION R2;
-
Разность: R=R1 \ R2. Результат R включает в себя кортежи из R1, которых нет в R2.
а) k1=k2; б) схемы R1 и R2 должны совпадать
SQL: DELETE * FROM R1 WHERE ID IN (SELECT ID FROM R2), где ID – одиночное значение некоторого выражения, например первичного ключа R1 и R2
-
Декартово произведение. R=R1 R2.
Результат операции R: каждый кортеж из R1 дополняется кортежем из R2;
арность результата – k = k1+k2; n = n1*n2.
Результат декартова произведения не может содержать дублирующие кортежи.
SQL: SELECT * FROM R1, R2;
-
Унарные базисные операции ра и их эквиваленты в sql
-
Селекция: R = F(Ri), где F - логическая формула над атрибутами из Ri. Результатом операции является таблица R, содержащая те же столбцы, что и Ri и строки из Ri, подстановка которых в F дает значение "истина".
Пример: R = C=c1 (R1)
SQL: SELECT * FROM R1 WHERE F;
-
Проекция: R = X(Ri), где X - подмножество атрибутов схемы Ri.
Результат операции - таблица со схемой (заголовком) X;
строки таблицы формируются из таблицы Ri, но только для атрибутов из X (вырезка по столбцам);
дублирующие кортежи из результата удаляются. R = BC(R1)
SQL: SELECT DISTINCTROW B, C FROM R1;
-
Дополнительный набор операций ра и их выражение через базисный набор.
1. Пересечение: R=R1 R2. Выражение через базисный набор: R=R1 \ (R1 \ R2).
2. Соединение: R=R1 ►F◄ R2, где F - логическое выражение над атрибутами из R1 и R2. Выражение через базисный набор: R=F(R1 R2)
3. Эквисоединение. Частный случай соединения, когда F≡R1.Ai=R2.Aj.
4. Естественное соединение: R=R1 ►◄ R2. Каждый кортеж из R1 сопоставляется с каждым кортежем из R2.
Два кортежа соединяются, если все одноименные атрибуты в них имеют одинаковое значение, результат соединения помещаются в R. Столбцы для одноименных атрибутов не дублируются, так как значение в этих столбцах совпадают
Выражение через базисный набор: R=X(F(R1R2)),
где F=i=1,…,k(R1.Ai=R2.Ai) – конъюнкция по всем одноименным атрибутам,
X= R1R2 – объединение атрибутов из R1 и R2.