- •Основные виды моделей хранения информации.
- •Реляционная модель. Основные понятия и термины.
- •Необходимость нормализации базы данных. Аномалии, причиной которых является использование единственного отношения.
- •Первая и вторая нормальные формы.
- •Неизбыточное, кольцевое, минимальные покрытия.
- •Метод декомпозиции. Алгоритм метода.
- •Метод "сущность-связь" основные термины и понятия. Графическое представление. Нотация Чена.
- •Генерация отношений при степени связи 1:1.
- •Организация средствами sql запроса с подзапросами.
- •Бинарные операции реляционной алгебры.
- •Унарные операции реляционной алгебры.
- •Метод "сущность-связь" основные термины и понятия. Графическое представление. Нотация Баркера.
- •Понятия первичного и внешнего ключа
- •Понятие функциональной зависимости (фз), полной фз, транзитивной фз
Организация средствами sql запроса с подзапросами.
Можно многократно вкладывать один запрос в другой. Запрос, вложенный в другой запрос, называется подзапросом.
Подзапрос SELECT выполняется 1 раз и представляет результат в главный блок (основную команду SELECT).
Подзапросы могут:
возвращать одну или более строк
один или более столбцов
использовать группы или групповые функции
задаваться в сложных критериях поиска внешних запросов с использованием предикатов AND, OR
соединять таблицы
обращаться к таблице, отличающейся от той к которой обращается внешний запрос
стоять в командах SELECT, UPDATE, DELETE, INSERT
коррелировать с внешним запросом и использовать SET операторы над множествами
Бинарные операции реляционной алгебры.
Реляционная алгебра – процедурный язык обработки реляционных таблиц. Реляционная алгебра – аппарат, базируемый на традиционных теоретико-множественных операциях и дополненный специфическими операциями над отношениями. Процедурный язык – язык, обеспечивающий пошаговое решение задач. Состоит из набора операторов, использующих отношения в качестве операндов и возвращающих отношение в качестве результата.
Произведение: возвращает отношение, содержащее всевозможные кортежи, которые являются сочетанием двух кортежей, принадлежащих соответственно двум определенным отношениям.(каждый с каждым)
Объединение: возвращает отношение, содержащее все кортежи, которые принадлежат или одному из двух определенных отношений, или обоим. (сумма без повторений).
Пересечение: возвращает отношение, содержащее все кортежи, которые принадлежат одновременно двум определенным отношениям.
Вычитание: возвращает отношение, содержащее все кортежи, которые принадлежат первому из двух определенных отношений и не принадлежат второму.
Соединение: возвращает отношение, кортежи которого – это сочетания двух кортежей, имеющие общее значение для одного или нескольких общих атрибутов этих двух отношений.
Деление: для двух отношений, бинарного, и унарного, возвращает отношение, содержащее все значения атрибута бинарного отношения, которые соответствуют всем значениям в унарном отношении.
Унарные операции реляционной алгебры.
Реляционная алгебра – процедурный язык обработки реляционных таблиц. Реляционная алгебра – аппарат, базируемый на традиционных теоретико-множественных операциях и дополненный специфическими операциями над отношениями. Процедурный язык – язык, обеспечивающий пошаговое решение задач. Состоит из набора операторов, использующих отношения в качестве операндов и возвращающих отношение в качестве результата.
Выборка: возвращает отношение, содержащее все кортежи из определенного отношения, которые удовлетворяют определенным условиям.
Проекция: возвращает отношение, содержащее все кортежи определенного отношения после исключения из него некоторых атрибутов.
Метод "сущность-связь" основные термины и понятия. Графическое представление. Нотация Баркера.
См. в10
Сущность в нотации Баркера представляется прямоугольником любого размера, содержащим внутри себя имя сущности, список имен атрибутов (возможно, неполный) и указатели ключевых атрибутов (знак "#" перед именем атрибута).
Все связи являются бинарными и представляются линиями с двумя концами (соединяющими сущности), для которых должно быть определено имя, степень множественности (один или много объектов участвуют в связи) и степень обязательности (т.е. обязательная или необязательная связь между сущностями). Для множественной связи линия присоединяется к прямоугольнику сущности в трех точках, а для одиночной связи - в одной точке. При обязательной связи рисуется непрерывная линия до середины связи, при необязательной - пунктирная линия.
Метод синтеза.
Необходимо все ФЗ с одинаковыми детерминантами выделять в группы и каждой группе отводить свое собственное отношение. Получаемые отношения проверяются на их соответствие НФБК.
Транзакции, сериализация транзакций.
Транзакцией называют неделимую с позиции воздействия на БД последовательность операций манипулирования данными. Транзакция может состоять из операций чтения, удаления, вставки, модификации данных. Транзакция обладает четырьмя основными свойствами:
Атомарности
Согласованности
Изолированности
Долговечности
План выполнения транзакций называется сериальным, если результат совместного выполнения транзакций эквивалентен результату некоторого последовательного выполнения этих же транзакций.
Сериализация транзакций – механизм выполнения транзакций по некоторому сериальному плану.
Основная реализационная проблема состоит в выборе метода сериализации набора транзакций, который не слишком ограничивал бы их параллельность.
Между транзакциями могут существовать следующие виды конфликтов:
W-W - транзакция 2 пытается изменять объект, измененный не закончившейся транзакцией 1;
R-W - транзакция 2 пытается изменять объект, прочитанный не закончившейся транзакцией 1;
W-R - транзакция 2 пытается читать объект, измененный не закончившейся транзакцией 1.
Практические методы сериализации транзакций основывается на учете этих конфликтов.