
- •Базы данных
- •Вопрос 29 Основные функции систем управления базами данных
- •Вопрос 30 Реляционные базы данных
- •Базовые понятия реляционных баз данных
- •Фундаментальные свойства отношений
- •Недостатки реляционной модели баз данных
- •Вопрос 31 Реляционная модель данных
- •Вопрос 32 Манипулирование данными
- •Реляционная алгебра
- •Вопрос 33
- •Вопрос 34
- •Вопрос 36 Реляционное исчисление кортежей и доменов
- •Вопрос 38. Состав программного обеспечения информационно-управляющих систем
- •Вопрос 39. Программы организации и контроля вычислительного процесса
- •Вопрос 40. Особенности операционных систем реального времени
- •Вопрос 41. Операционная система реального времени qnx
- •Вопрос 42. Операционная система реального времени "Карусель"
- •Вопрос 43 Программа обработки прерываний
- •Вопрос 44. Программа включения оперативной задачи
- •Вопрос 45. Программа включения карусельной задачи
- •Вопрос 46 Программа start и подпрограмма zagr
Вопрос 32 Манипулирование данными
Как указывалось выше, в реляционных базах данных используются два механизма манипулирования данными - реляционная алгебра, основанная на теории множеств, и реляционное исчисление, базирующееся на математической логике (точнее, на исчислении предикатов). При этом во втором случае применяются два вида реляционного исчисления - исчисление доменов и исчисление предикатов.
Все эти механизмы обладают одним важным свойством: они замкнуты относительно понятия «отношение». Это значит, выражения реляционной алгебры и формулы реляционного исчисления определяются над отношениями реляционных баз данных (таблицами), и результатом вычисления является также отношение (таблица). В результате любое выражение или формула могут интерпретироваться как отношение, что позволяет использовать их в других выражениях и формулах. Реляционная алгебра и реляционное исчисление обладают большой выразительной мощностью: очень сложные запросы к базе данных могут быть выражены с помощью одного выражения реляционной алгебры или одной формулы реляционного исчисления. Конкретный язык манипулирования реляционными БД называется реляционно-полным, если любой запрос, выраженный с помощью одного выражения реляционной алгебры или одной формулы реляционного исчисления, может быть выражен с помощью одного оператора этого языка.
Следует отметить, что механизмы реляционной алгебры и реляционного исчисления эквивалентны, т.е. для любого допустимого выражения реляционной алгебры можно построить эквивалентную (т.е. производящую эквивалентный результат) формулу реляционного исчисления и наоборот. При этом выражения реляционной алгебры вычисляются на основе вычисления элементарных алгебраических операций с учётом их старшинства и возможного наличия скобок, т.е. выражения реляционной алгебры имеют процедурную интерпретацию. Для формул реляционного исчисления однозначная интерпретация, вообще говоря, отсутствует. Формула только определяет условия, которым должны удовлетворять кортежи результирующего отношения. Поэтому языки реляционного отношения являются непроцедурными или декларативными.
Алгоритмические языки манипулирования данными могут быть построены с применением только реляционной алгебры или реляционного исчисления. Но современные языки (например, SQL), как правило, основываются на некоторой смеси алгебраических и логических конструкций.
Реляционная алгебра
Поскольку отношения (таблицы) являются множествами, средства манипулирования отношениями базируются на традиционных теоретико-множественных операциях, дополненных некоторыми специальными операциями, специфическими для баз данных.
Набор основных алгебраических операций состоит из восьми операций, которые делятся на два класса: теоретико-множественные и специальные реляционные операции.
В состав теоретико-множественных операций входят:
- объединение отношений;
- пересечение отношений;
- взятие разности отношений;
- прямое произведение отношений. Специальные реляционные операции включают:
- ограничение отношений;
- проекцию отношений;
- соединение отношений;
- деление отношений.
Кроме того, в состав реляционной алгебры включены: операция присвоения, позволяющая сохранить результаты вычисления алгебраического выражения, и операция переименования атрибутов, дающая возможность сформировать заголовок (схему) результирующего отношения.