- •3. Назначение, основные функции и понятие субд.
- •4. Трёхуровневая архитектура бд.
- •5. Жизненный цикл базы данных.
- •6. Иерархическая и сетевая модели данных.
- •7. Реляционная модель данных. Общие представления.
- •8. Понятие домена.
- •8. Отношения, атрибуты и кортежи.
- •9. Формализация отношений в виде таблиц.
- •11. Потенциальные ключи. Первичные и альтернативные ключи.
- •12. Null-значения. Правило целостности объектов.
- •14. Внешние ключи. Ссылочная целостность.
- •15. Индексные файлы. Сортировка файлов бд.
- •16. Поиск записей в файле бд.
- •17. Стратегии ссылочной целостности.
- •18. Основные операции над реляционными базами данных.
- •18. Основы реляционной алгебры. Операции "Объединение", "Разность", "Декартово произведение". Примеры.
- •19. Специальные реляционные операции: "Выборка", "Проекция", "Соединение", "Деление". Примеры.
18. Основные операции над реляционными базами данных.
Операндами математического аппарата «реляционная алгебра» являются отношения. Реляционная алгебра фактически и определяет манипуляционную часть реляционной модели, т.е. операции над отношениями. Доказано, что реляционная алгебра, как математический аппарат, обладает свойством замкнутости, то есть, любая возможная и допустимая операция над отношениями может быть реализована либо с помощью одной из операций, либо с помощью сочетания операций. Выражение реляционной алгебры может быть сколь угодно сложным. Известно, что каждое отношение должно иметь уникальное имя в пределах базы данных. Однако при выполнении операций реляционной алгебры в качестве аргументов или промежуточных результатов могут возникать так называемые неименованные отношения. Они только вычисляются в процессе выполнения реляционных операций.
Различают восемь реляционных операций, которые принято делить на две группы:
1.Традиционные или теоретико–множественные операции над множествами: объединение, пересечение, вычитание и декартово произведение.
2.Специальные реляционные операции: выборка, проекция, соединение и деление.
Выборка: возвращает отношение, содержащее все кортежи из определенного отношения, которые удовлетворяют определенным условиям.
Проекция: возвращает отношение, содержащее все кортежи (называемые как подкортежи) определенного отношения после исключения из него некоторых атрибутов.
Соединение: возвращает отношение, кортежи которого — это сочетания двух кортежей (принадлежащих соответственно двум определенным отношениям), имеющих общее значение для одного или нескольких общих атрибутов этих двух отношений (и такие общие значения в результирующем кортеже появляются только один раз, а не дважды).
Деление: для двух отношений, бинарного и унарного, возвращает отношение, содержащее все значения одного атрибута бинарного отношения, которые соответствуют (в другом атрибуте) всем значениям в унарном отношении.
Объединение: возвращает отношение, содержащее все кортежи, которые принадлежат или одному из двух определенных отношений, или обоим.
Пересечение: возвращает отношение, содержащее все кортежи, которые принадлежат одновременно двум определенным отношениям.
Вычитание: возвращает отношение, содержащее все кортежи, которые принадлежат первому из двух определенных отношений и не принадлежат второму.
Произведение: возвращает отношение, содержащее всевозможные кортежи, которые являются сочетанием двух кортежей, принадлежащих соответственно двум определенным отношениям.
18. Основы реляционной алгебры. Операции "Объединение", "Разность", "Декартово произведение". Примеры.
Различают восемь реляционных операций, которые принято делить на две группы:
1.Традиционные или теоретико–множественные операции над множествами: объединение, пересечение, вычитание и декартово произведение.
2.Специальные реляционные операции: выборка, проекция, соединение и деление.
Прежде, чем вводить определения операций, необходимо отметить, что в результате любой операции реляционной алгебры должно получаться тоже отношение. Операции требуют, чтобы некоторые отношения – операнды были одного и того же типа. Такие отношения называются совместными по типу.
Совместными по типу называются отношения, имеющие идентичные заголовки: отношения имеют одно и то же множество атрибутов, атрибуты с одинаковыми именами должны быть определены на одних и тех же доменах.
■ Объединение.
Объединением двух совместимых по типу отношений называется отношение с теми же заголовками и телом, состоящим из кортежей, каждый из которых принадлежит либо А, либо В, либо обоим телам одновременно. С = А union В.
Объединение отношений не может содержать одинаковых кортежей. Поэтому если какой-либо кортеж входит в тело и отношения А, и отношения В, то в объединение этих отношений он будет входить только один раз.
■ Пересечение.
Пересечением двух совместимых по типу отношений называется отношение С с тем же заголовком, и телом, состоящим из кортежей, каждый из которых одновременно принадлежит и телу отношения А, и телу отношения В. C = A intersect B.
■ Вычитание.
Вычитанием двух совместимых по типу отношений А и В называют отношение С с тем же заголовком и телом, состоящим из кортежей, одновременно принадлежащих отношению А и не принадлежащих отношению В. C = A minus B.
■ Декартово пересечение.
Пусть даны два произвольных отношения А (А1, А2, …, Аn) и В(В1, В2, …, Вn). Тогда их декартовым произведением называется отношение С, заголовком которого является сцепление атрибутов отношения А и В, а телом отношения является множество кортежей вида (а1,а2,…, аn,b1,b2, …,bn) таких, что обязательно найдется (а1,а2,…, аn) из А & (b1,b2, …,bn) из В. С = А times В.
