Начальные сведения о реляционной модели данных были даны в [1]. Здесь
мы рассмотрим некоторые аспекты этой модели более детально.
Основной элемент реляционной модели – таблица (в реляционной терми-
нологии синоним термина «таблица» - отношение). Таблица образуется столб-
цами (атрибутами) и строками (кортежами).
Таблицы могут быть базовыми или виртуальными. Базовые – таблицы,
хранящиеся в БД постоянно. Множество базовых таблиц составляет схему БД.
Виртуальные таблицы возникают как результат действий по манипулированию
данными. Виртуальные таблицы существуют непродолжительное время.
Свойства столбцов:
Имя столбца уникально в пределах одной таблицы.
Если при манипулировании с данными имена столбцов различных таблиц
совпадают, к имени столбца добавляется префикс из имени таблицы и
точки, например: Студент.Фамилия
Значения столбца принадлежат только одному домену.
При этом говорят, что таблицы однородны по столбцам.
СУБД должна обеспечивать соблюдение этого свойства, позволяя разме-
щение в столбцах только значений из разрешенного домена.
Свойства строк:
На пересечении столбца и строки находится только одно значение.
Как уже было сказано, не допускается наличие многозначных атрибутов.
Строки в таблице должны быть уникальными.
Если некоторые строки полностью совпадают, невозможно идентифици-
ровать одну из них.
Наличие первичного ключа.
Первичный ключ – столбец или комбинация столбцов, однозначно опре-
деляющих каждую строку таблицы. Наличие первичного ключа гаранти-
рует уникальность строк.
Для виртуальных таблиц требование уникальности строк и наличия пер-
вичных ключей могут не соблюдаться
Первичные и внешние ключи. Единственный способ описания связей
между данными в реляционной модели – использование первичных и внешних
ключей. Использование значения первичного ключа некоторой таблицы в каче-
стве внешнего ключа в другой таблице образует связь между соответствующи-
ми строками этих таблиц
Первичный ключ – наименьший (несократимый) набор столбцов таблицы,
способных обеспечить уникальность каждой строки. Первичный ключ не мо-
жет содержать пустое значение (Null). Чаще первичный ключ состоит из одного
столбца, но не всегда.
Иногда, особенно для составных сущностей, бывает нецелесообразно вво-
дить специальный столбец для образования первичного ключа.
Составной первичный ключ – ключ, состоящий из нескольких столбцов.
Уникальной является комбинация значений всех столбцов ключа. Каждый
столбец ключа сам по себе может не быть уникальным.
Внешний (вторичный) ключ – столбец, значения которого должны совпа-
дать с первичным ключом некоторой таблицы. Иными словами, для внешнего
ключа доменом является множество значений первичного ключа. Внешний
ключ не может принимать значения, не содержащиеся в первичном ключе.
Единственно возможное исключение – значение Null (пусто), при котором
внешний ключ ни на что не ссылается. Поддержание целостности ключей явля-
ется задачей СУБД.
Допустимой является ситуация, когда содержащийся в таблице внешний
ключ ссылается на первичный ключ той же самой таблицы. Пример: запись с
информацией о сотруднике, размещенная в таблице «Сотрудник», имеет атри-
бут «Начальник», ссылающийся на другую запись в той же самой таблице.
Внешний ключ может быть (или не быть) частью составного первичного
ключа в своей таблице.
Документирование таблиц. Основные сведения о таблице – название, на-
бор полей и первичный ключ, могут быть задокументированы кратко в тексто-
вой форме:
ИмяТаблицы(Поле1, Поле2, Поле3, Поле4, …).
Имена полей, входящих в первичный ключ таблицы, подчеркивают. Такая
форма описания удобны при анализе структуры таблицы, без учета связей – на-
пример, при проведении нормализации.
Переход от инфологической модели к реляционной. Описанные в инфо-
логической модели сущности преобразуются в таблицы, атрибуты сущностей
становятся столбцами этих таблиц.
Домены атрибутов должны быть приведены в соответствие с имеющимися
в СУБД типами данных. Некоторые СУБД позволяют разработчику формиро-
вать собственные домены (типы данных).
Определенные для сущностей уникальные идентификаторы становятся пер-
вичными ключами таблиц.
Связи между таблицами вида «один-ко-многим» (одной записи главной
таблицы может соответствовать несколько записей в связанной) строятся до-
бавлением в связанные таблицы внешних ключей, ссылающихся на первичные
ключи главных таблиц.
Для создания связи «один-к-одному», поле внешнего ключа должно быть
первичным ключом связанной таблицы, либо на него должно быть наложено
условие уникальности значений.

Каждая связь вида «многие-ко-многим» должна быть преобразованы в две
связи «один-ко-многим».