По распространенности и популярности реляционные СУБД сегодня вне конкуренции. По сути, они фактически стали промышленным стандартом. В реляционной модели рассматриваются три аспекта данных – структура данных, целостность данных и обработка данных.
Структура данных реляционной модели:
Реляционной считается такая база данных, в которой все данные представлены для пользователя в виде прямоугольных таблиц значения данных, и все операции сводятся к манипуляциям с таблицами.
Таблица состоит из строк и столбцов и имеет имя, уникальное внутри базы данных, которое именуется, как отношение. Строка таблицы носит название картежа, а столбец – атрибута.
Количество кортежей называется кардинальным числом, а количество атрибутов – степенью отношения.
Первичный ключ является уникальным идентификатором и представляет собой такой столбец или комбинацию столбцов, что в любой момент времени не существует двух строк, содержащих одинаковое значение в этом столбце или комбинации столбцов.
Множество всех возможных значений (область определения) атрибута объекта называется доменом. Например, для атрибута ВЕС домен задается интервалом целых чисел, поскольку отрицательного веса не бывает.
Каждый столбец таблицы имеет имя, которое обычно записывается в верхней части таблицы. Оно должно быть уникальным в таблице, однако различные таблицы могут иметь столбцы с одинаковыми именами. Любая таблица должна иметь, по крайней мере, один столбец. Порядок следования столбцов в таблице определяется порядком следования их имен при ее создании. В отличие от столбцов, строки не имеют имен; порядок их следования в таблице не определен, а количество логически не ограничено.
Отношения обладают следующими важными свойствами:
в них нет одинаковых кортежей;
кортежи не упорядочены сверху вниз;
атрибуты не упорядочены слева на право;
все значения атомарны, т.е. отношения нормализированы.
Последнее свойство является следствием того, что в каждой позиции пересечения столбца и строки в таблице должно располагаться точно одно значение, а не набор значений. Отношение, обладающее этим свойством, называется нормализированным или представленным в первой нормальной форме.
Целостность реляционных данных:
В реляционной модели данных есть два общих правила целостности. Эти два правила относятся к потенциальным ключам и внешним ключам. Выше рассматривался первичный ключ, который является частным случаем потенциального ключа. Пусть R – некоторое отношение. Тогда потенциальный ключ K для R - это подмножество множества атрибутов R, обладающее такими свойствами, как:
Уникальность – нет двух различных кортежей в отношении R с одинаковым значением K;
Неизбыточность – никакое из подмножеств K не обладает свойством уникальности.
Каждое отношение имеет, по крайней мере, один потенциальный ключ, так как не содержит одинаковых кортежей.
Потенциальные ключи имеют первостепенную важность для реляционных систем, так как единственный гарантируемый способ указать на какой – ни будь кортеж – это указать значение некоторого потенциального ключа.
Потенциальный ключ, имеющий более одного атрибута, называется составным, а состоящий из одного атрибута – простым.
Отношение может иметь более одного потенциального ключа. В этом случае один из потенциальных ключей выбирается в качестве первичного, а остальные потенциальные ключи, если они есть, называются альтернативными
Существует два подхода к проектированию реляционной базы данных.
Первый подход заключается в том, что на этапе концептуального проектирования создается не концептуальная модель данных, а непосредственно реляционная схема базы данных, состоящая из определений реляционных таблиц, подвергающихся нормализации.
Второй подход основан на механическом преобразовании функциональной модели, созданной ранее, в нормализованную реляционную модель. Этот подход чаще всего используется при проектировании больших, сложных схем баз данных, необходимых для корпоративных информационных систем.
Табл.1. Основные определения реляционных СУБД
№
Термин
Определение
Реляционная модель данных
Организует и представляет данные в виде таблиц или реляций.
Реляционная база данных (РБД, RDBMS).
База данных, построенная на реляционной модели.
Реляция (таблица-элементарная информационная единица)
Двумерная таблица, содержащая строки и столбцы данных.
Степень реляции.
Количество атрибутов реляции. При том необходимо помнить, что никакие два атрибута реляции не могут иметь одинаковых имен.
Кортежи
Строки реляции (таблицы), соответствуют объекта, конкретному событию или явлению.
Атрибуты
Столбцы таблицы, характеризующие признаки, параметры объекта, события, явления.
Область атрибута
Набор всех возможных значений, которые могут принимать атрибуты. Если в процессе работы возникает ситуация, что атрибут неприменим или значения одного или нескольких атрибутовстроки пока неизвестны, то строка запишется в базуданных с пустыми значениямиэтих атрибутов (NULL строка).
Пустое значение
Значение, приписываемое атрибуту в кортеже, если атрибут неприменим или его значение неизвестно
Ключ
Любой набор атрибутов, однозначно определяющий каждый кортеж реляционной таблицы.
Ключ реляции
Ключ также можно описать как минимальное множество атрибутов, однозначно определяющих (или функционально определяющих)каждое значение атрибута в кортеже.
Составной ключ
Ключ содержащий два или более атрибута.
Потенциальный ключ
В любой данной реляционной таблице может оказаться более одного набора атрибутов. Обычно в качестве первичного ключа выбирают потенциальный ключ, которым проще всего пользоваться при повседневной работе по вводу данных.
Первичный ключ.
Поле или набор полей, однозначно идентифицирующий запись.
Внешний ключ.
Набор атрибутов одной таблицы, являющийся ключом другой (или той же самой) таблицы; используется для определения логических связей между таблицами. Атрибуты внешнего ключа не обязательно должны иметь те же имена, что и атрибуты ключа, которым они соответствуют.
Рекурсивный внешний ключ.
Внешний ключ, ссылающийся на свою собственную реляционную таблицу.
Родительская реляция (таблица)
Таблица, поля которой входят в другую таблицу.
Дочерняя реляция (таблица)
Таблица, поля которой используют информацию из полей другой таблицы, являющейся по отношению к данной родительской.
Отношение один-к-одному
Когда одной записи в родительской таблицы соответствует одна запись в дочерней таблице
Отношение один-ко-многим
Когда одной записи в родительской таблицы соответствует несколько записей в дочерней таблице
Отношение многие-ко-многим
Когда многим записям в родительской таблицы соответствуют несколько записей в дочерней таблице
Рекурсивное отношение.
Отношение, связывающее объектное множество с ним самим.
View (Представления)
Информационная единица РБД (по структуре аналогичная таблице), записи которой сформированы в результате выполнения запросов к другим таблицам.
Ссылочная целлостность
Адекватное воспроизведение записей в ссылочных полях таблиц.
Триггер
Средство обеспечения ссылочной целостности на основе механизма каскадных изменений.
Индекс
Механизмы быстрого доступа к хранящимся в таблицах данных путем их предварительной сортировки.
Транзакция