записей, запись в стиле Кобола (которая допускает повторяющиеся
группы) или плоскую запись (которая их не допускает), логическую
запись или физическую запись, хранимую запись или виртуальную
запись и т.д. Вместо этого он использовал термин "кортеж длины
n" или просто "кортеж", которому дал точное определение. В
литературе [3, 4, 5] можно подробно познакомиться с
терминологией реляционных баз данных, а здесь мы будем
использовать неформальные их эквиваленты: таблица - для
отношения, строка или запись - для кортежа, столбец или поле - для
атрибута.
Появление теории реляционных баз данных и предложенного
Коддом языка запросов "alpha", основанного на реляционном
исчислении [6], инициировало разработку ряда языков запросов,
которые можно отнести к двум классам:
1. Алгебраические языки, позволяющие выражать запросы
средствами специализированных операторов, применяемых к
отношениям (JOIN - соединить, INTERSECT - пересечь,
SUBTRACT - вычесть и т.д.).
2. Языки исчисления предикатов, представляющие собой набор
правил для записи выражения, определяющего новое отношение
из заданной совокупности существующих отношений. Другими
словами исчисление предикатов есть метод определения того
отношения, которое нам желательно получить (как ответ на
запрос) из отношений, уже имеющихся в базе данных.
Современные реляционные СУБД, как правило, поддерживают
аппарат реляционной алгебры внутри своей организации, а
пользователю предоставляют интерфейс для формулирования
запросов к базе данных, основанный на реляционном исчислении.
Операторы обоих языков замкнуты относительно понятия
отношения, т.е. результатом любой операции над отношением
является отношение с новыми свойствами (атрибутами или
кортежами).
Само понятие ’’отношение’’ определено на множестве доменов
(атрибутов с набором допустимых значений) и множестве
кортежей, соответствующих множеству доменов. Множество
доменов составляет схему отношения (структуру таблицы), а
множество кортежей – тело отношения (набор записей в таблице).
Каждое отношение должно удовлетворять следующему набору
требований:
10