Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
shpory_po_MIUS_gotov_2.doc
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
441.86 Кб
Скачать

Вопрос 32 Манипулирование данными

Как указывалось выше, в реляционных базах данных используются два механизма манипулирования данными - реляционная алгебра, основанная на теории множеств, и реляционное исчисление, базирующееся на математиче­ской логике (точнее, на исчислении предикатов). При этом во втором случае применяются два вида реляционного исчисления - исчисление доменов и ис­числение предикатов.

Все эти механизмы обладают одним важным свойством: они замкнуты относительно понятия «отношение». Это значит, выражения реляционной алгебры и формулы реляционного исчисления определяются над отноше­ниями реляционных баз данных (таблицами), и результатом вычисления яв­ляется также отношение (таблица). В результате любое выражение или фор­мула могут интерпретироваться как отношение, что позволяет использовать их в других выражениях и формулах. Реляционная алгебра и реляционное исчисление обладают большой выразительной мощностью: очень сложные запросы к базе данных могут быть выражены с помощью одного выражения реляционной алгебры или одной формулы реляционного исчисления. Кон­кретный язык манипулирования реляционными БД называется реляционно-полным, если любой запрос, выраженный с помощью одного выражения ре­ляционной алгебры или одной формулы реляционного исчисления, может быть выражен с помощью одного оператора этого языка.

Следует отметить, что механизмы реляционной алгебры и реляционно­го исчисления эквивалентны, т.е. для любого допустимого выражения реля­ционной алгебры можно построить эквивалентную (т.е. производящую экви­валентный результат) формулу реляционного исчисления и наоборот. При этом выражения реляционной алгебры вычисляются на основе вычисления элементарных алгебраических операций с учётом их старшинства и возмож­ного наличия скобок, т.е. выражения реляционной алгебры имеют процедур­ную интерпретацию. Для формул реляционного исчисления однозначная ин­терпретация, вообще говоря, отсутствует. Формула только определяет усло­вия, которым должны удовлетворять кортежи результирующего отношения. Поэтому языки реляционного отношения являются непроцедурными или декларативными.

Алгоритмические языки манипулирования данными могут быть по­строены с применением только реляционной алгебры или реляционного ис­числения. Но современные языки (например, SQL), как правило, основыва­ются на некоторой смеси алгебраических и логических конструкций.

Реляционная алгебра

Поскольку отношения (таблицы) являются множествами, средства ма­нипулирования отношениями базируются на традиционных теоретико-множественных операциях, дополненных некоторыми специальными опера­циями, специфическими для баз данных.

Набор основных алгебраических операций состоит из восьми опера­ций, которые делятся на два класса: теоретико-множественные и специаль­ные реляционные операции.

В состав теоретико-множественных операций входят:

- объединение отношений;

- пересечение отношений;

- взятие разности отношений;

- прямое произведение отношений. Специальные реляционные операции включают:

- ограничение отношений;

- проекцию отношений;

- соединение отношений;

- деление отношений.

Кроме того, в состав реляционной алгебры включены: операция при­своения, позволяющая сохранить результаты вычисления алгебраического выражения, и операция переименования атрибутов, дающая возможность сформировать заголовок (схему) результирующего отношения.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]