- •Функции субд.
- •Проектирование.
- •Реляционная и объектно-реляционная модели данных субд.
- •Реляционная алгебра.
- •Операции реляционной алгебры.
- •Взаимосвязь операций реляционной алгебры.
- •Нормальные формы отношений. 1нф, 2нф, 3нф, бкнф.
- •Приведение к третьей нормальной форме:
- •Представление операций реляционной алгебры средствами языка sql.
- •Структура языка sql. Оператор select. Типы соединений таблиц.
- •Соединение в sql.
- •Подзапросы в языке sql. Подзапросы с операторами select, update, insert, delete.
Реляционная алгебра.
Под реляционной
алгеброй
понимается пара
,где:
– носитель –
множество отношений различной арности;
– сигнатура
–операции над отношениями.
Домен
–область определения, состоящая из
элементов, неделимых с точки зрения
реляционной алгебры.
Отношение
–подмножество декартового произведения
доменов. Отношение описывается схемой
,где
–атрибут
отношения. Порядок атрибутов несущественен,
а его значения определяются соответствующим
доменом. Одна конкретная запись отношения
называется кортежем.
Операции реляционной алгебры.
Теоретико-множественные:
Объединение
–
множество кортежей, которые принадлежат
или
или
или обоим. Арность обоих отношений и
домены атрибутов с одинаковым порядковым
номером должны совпадать.Пересечение
–
множество кортежей, которые принадлежат
и
.
Арность обоих отношений и домены
атрибутов с одинаковым порядковым
номером должны совпадать.Пересечение
–
множество кортежей, которые принадлежат
,
но не
.
Арность обоих отношений и домены
атрибутов с одинаковым порядковым
номером должны совпадать.Декартово произведение
–множество кортежей длины
,
составленные как все возможные сочетания
из кортежей первого и второго отношений.
Информационные:
Проекция
множество
кортежей, получаемых из кортежей
отбором
атрибутов с именами
.
Множество выбираемых атрибутов должно
быть подмножеством атрибутов исходного
отношения.Ограничение
– множество кортежей из R,
удовлетворяющих булевому выражению
над атрибутами исходного отношения.Соединение
–
множество кортежей, получаемое как
декартово произведение исходных
отношений, ограниченных условием
соединения.Деление
–множествопроекций
кортежей из
,
в которых есть все значения атрибута
деления
из
отношения
.
Взаимосвязь операций реляционной алгебры.
Нормальные формы отношений. 1нф, 2нф, 3нф, бкнф.
Нормальная форма —совокупность требований, которым должно удовлетворять отношения БД.Процесс преобразования отношений базы данных (БД) к виду, отвечающему нормальным формам, называется нормализацией.
Конечной целью нормализации является уменьшение потенциальной противоречивости хранимой в базе данных информации. Как отмечает К. Дейт,[2] общее назначение процесса нормализации заключается в следующем:
исключение некоторых типов избыточности;
устранение некоторых аномалий обновления;
разработка проекта базы данных, который является достаточно «качественным» представлением реального мира, интуитивно понятен и может служить хорошей основой для последующего расширения;
упрощение процедуры применения необходимых ограничений целостности.
Устранение избыточности производится, как правило, за счёт декомпозиции отношений таким образом, чтобы в каждом отношении хранились только первичные факты (то есть факты, не выводимые из других хранимых фактов).
Отношение находится в первой н.ф. тогда и только тогда, когда все входящие в него атрибуты являютсяатомарными (неделимыми).
Приведение к первой нормальной форме:
При отсутствии значения атрибута вводится фиктивное значение в домен, означающее отсутствие;
При нескольких значениях атрибута в одном кортеже – разбить отношение на два, введя новыйключ.
Отношение находится во второй н.ф., если оно находится в первой н.ф. и каждый неключевой атрибутфункционально полно зависит от каждого ключа.
Приведение ко второй нормальной форме:
Если в некоторых отношениях обнаружена зависимость атрибутов от части сложного ключа, то проводим декомпозицию этих отношений на несколько отношений следующим образом: те атрибуты, которые зависят от части сложного ключа выносятся в отдельное отношение вместе с этой частью ключа. Висходном отношении остаются все ключевые атрибуты.
Отношение находится в третьей н.ф. в том и только в том случае, если оно находится во второй н.ф. икаждый неключевой атрибут не является транзитивно зависимым от какого-либо ключа отношения.
