2.3. Манипулирование реляционными базами данных. Реляционная алгебра
В разделе 1 были выделены две разновидности операций по обработке данных: определение и манипулирование. К манипулированию данными были отнесены такие операции, как добавление, обновление, удаление и поиск информации.
Если говорить о реляционной модели и языке структурированных запросов (SQL), то в качестве основных операторов манипулирования данными следует назвать оператор добавления строк в таблицу (INSERT), оператор удаления строк их таблицы (UPDATE), оператор удаления строк из таблицы (DELETE) и оператор выборки (SELECT).
Ознакомление с синтаксисом перечисленных операторов не входит в теоретическую часть курса. Сами команды и примеры их использования приведены в описаниях лабораторных работ 2 и 3; более подробную информацию о них можно найти в специальной литературе по SQL, в частности, в разделах MSDN, посвященных диалекту Transact-SQL.
Необходимо отметить, что первые три операции являются достаточно простыми в том плане, что связаны всегда с набором записей из одной определенной таблицы. Что же касается возможностей поиска информации в реляционных СУБД, то они довольно широки, поэтому именно они представляют наибольший интерес с теоретической точки зрения. В теории баз данных существует специальный раздел – реляционная алгебра. В нем описывается набор операций поиска данных в реляционных таблицах. Предложенный Коддом базовый вариант реляционной алгебры включает, во-первых, традиционные теоретико-множественные операции:
· объединение;
· пересечение;
· взятие разности;
· прямое произведение;
а также дополнительные операции, специфичные для отношений:
· ограничение;
· проекция;
· соединение;
· расширенная проекция;
· сортировка;
· агрегирование;
· группирование.
В процессе развития СБД реляционная алгебра развивалась, и в настоящее время она расширена такими операциями, как вычисление арифметических/логических выражений, переименование атрибутов, группирование, агрегирование и сортировка.
2.3.1. Особенности теоретико-множественных операций
Операции объединения, пересечения и разности возможны над отношениями, совместимыми по схеме. Такие отношения обладают одинаковыми заголовками, и все одноименные атрибуты определены на одном домене.
Объединением отношений R1 и R2 является отношение, содержащее все кортежи, содержащиеся как в R1, так и R2.
Пересечение отношений R1 и R2 содержит кортежи, входящие в оба отношения-операнда.
Разность отношений R1 и R2 есть отношение, которое состоит из кортежей, входящих в R1, но не входящих в R2.
Перечисленные операции имеют следующие обозначения:
- объединение;
- пересечение;
- разность.
Примеры объединения, пересечения и разности отношений показаны на рис. 2.11. Операции выполняются над двумя исходными отношениями: students_fio и teachers_fio (соответственно, ФИО студентов и преподавателей, рис. 2.11(а)). Отношения являются совместимыми по схеме, поэтому выполнение всех трех операций над ними возможно. Результаты выполнения операций показаны на рис. 2.11 (б, в, г).
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.