РУКОВОДСТВО ПО РЕЛЯЦИОННОЙ СУБД DB2


АМАНИПУЛИРОВАНИЕ РЕЛЯЦИОННЫМИ ДАННЫМИ - часть 4


Целесообразно упомянуть, что из восьми рассмотренных операций только пять являются примитивами, а именно: селекция, проекция, декартово произведение, объединение и разность. Другие три операции могут быть определены через первые пять. Например, естественное соединение может быть выражено как проекция селекции декартова произведения. Однако эти три другие операции, особенно соединение, оказываются настолько полезными на практике, что хорошо было бы поддерживать их непосредственно, несмотря на то, что они не являются примитивами.

Обратимся теперь к реляционной операции присваивания. Цель этой операции заключается просто в том, чтобы дать возможность сохранять значение какого-либо алгебраического выражения, например соединения, в некотором более или менее постоянном месте. Ее можно смоделировать в языке SQL с помощью операций INSERT. . .SELECT. Предположим, например, что отношение XYZ имеет два атрибута, НОМЕР_ПОСТАВЩИКА и НОМЕР-ДЕТАЛИ. Предположим также, что в настоящее время это отношение пусто (не содержит никаких кортежей). Тогда предложение SQL:

INSERT                INTO               XYZ (НОМЕР_ПОСТАВЩИКА, НОМЕР_ДЕТАЛИ)

SELECT           S. НОМЕР_ПОСТАВЩИКА, Р. НОМЕР_ДЕТАЛИ

FROM              S, P

WHERE           S. ГОРОД = Р. ГОРОД;

присваивает результат входящего в него предложения SELECT, а именно проекцию соединения, отношению XYZ.

В качестве заключения на рис. А.3 приводится сводка основных компонентов реляционной модели.

Структура данных

домены (значения)

n-арные отношения (атрибуты, кортежи)

ключи (возможные, первичные, альтернативные, внешние)

Целостность данных

1. значения первичных ключей не должны быть неопределенными

2. значения внешних ключей должны соответствовать значениям первичных ключей

(или быть неопределенными)

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

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

объединение, пересечение, разность, декартово произведение

селекция, проекция, соединение, деление

реляционное присваивание

Рис. А.3. Реляционная модель

 




- Начало -  - Назад -  - Вперед -