Атрибут некоторого набора объектов сам может быть набором объектов, имеющих собственные атрибуты. Например, атрибутом лица (как экземпляра набора объектов «Лица») является вуз, который это лицо окончило (МГУ, МИФИ и т. п.). С другой стороны, конкретный вуз — это экземпляр набора объектов «Вузы» и характеризуется множеством данных: фамилией ректора, адресом, специализацией, числом студентов и т. д. Наконец, ректор в свою очередь является экземпляром набора объектов «Лица». Таким образом, возникает возможность установления связи между экземплярами объектов из разных наборов.
Развитие реляционных баз данных началось в конце 60-х годов, когда появились первые работы, в которых обсуждались возможности использования при проектировании баз данных привычных и естественных способов представления данных — так называемых табличных даталогических моделей.
Основоположником теории реляционных баз данных считается сотрудник фирмы IBM доктор Э. Кодд, опубликовавший 6 июня 1970 г. статью A Relational Model of Data for Large Shared Data Banks (Реляционная модель данных для больших коллективных банков данных). В этой статье впервые был использован термин «реляционная модель данных», что и положило начало реляционным базам данных.
Теория реляционных баз данных, разработанная в 70-х годах в США доктором Э. Коддом, имеет под собой мощную математическую Основу, описывающую правила эффективной организации данных. Разработанная Э. Коддом теоретическая база стала основой для разработки теории проектирования баз данных.
Э. Кодд, будучи математиком по образованию, предложил использовать для обработки данных аппарат теории множеств (объединение, пересечение, разность, декартово произведение). Он доказал, что любой набор данных можно представить в виде двумерных таблиц особого вида, известных в математике как «отношения».
Реляционной считается такая база данных, в которой все данные представлены для пользователя в виде прямоугольных таблиц значений данных, и все операции над базой данных сводятся к манипуляциям с таблицами.
Таблица состоит из столбцов (полей) и строк (записей); имеет имя, уникаль ное внутри базы данных. Таблица отражает тип объекта реального мира (сущ ность), а каждая ее строка— конкретный объект. Так, таблица Спортивная секция содержит сведения обо всех детях, занимающихся в данной спортивной секции, а ее строки представляют собой набор значений атрибутов каждого кон кретного ребенка. Каждый столбец таблицы — это совокупность значений конк ретного атрибута объекта. Столбец Вес, например, представляет собой совокупность всех весовых категорий детей, занимающихся в секции. В столбце Пол могут содержаться только два различных значения: «муж.» и «жен.». Эти значения выбираются из множества всех возможных значений атрибута объекта, которое называется доменом (domain). Так, значения в столбце выбираются из множества всех возможных весов детей.
В самом общем виде домен определяется заданием некоторого базового' типа данных, к которому относятся элементы домена, и произвольного логического выражения, применяемого к элементам данных. Если при вычислении логического условия относительно элемента данных в результате получено значение «истина», то этот элемент принадлежит домену. В простейшем случае домен определяется как допустимое потенциальное множество значений одного типа. Например, совокупность дат рождения всех сотрудников составляет «домен дат рождения», а имена всех сотрудников составляют «домен имен сотрудников». Домен дат рождения имеет тип данных, позволяющий хранить информацию о моментах времени, а домен имен сотрудников должен иметь символьный тип данных.
В один домен могут входить значения из нескольких столбцов, объединенных, помимо одинакового типа данных, еще и логически. Например, домен может состоять из столбца с датой пйступления на работу и столбца с датой увольнения. Но в этот домен нельзя включить столбец с датой рождения, так как дата поступления или увольнения с работы не связана с датой рождения.