Реляционные языки манипулирования данными

Реляционные модели

Классификация реляционных языков

Основные характеристики языка SQL

Организация запросов к базе данных на языке SQL

РЕЛЯЦИОННЫЕ МОДЕЛИ

Основные понятия

Реляционные модели данных (РМД), в отличие от сетевых и иерархических (см. гл. 15), характеризуются простотой структуры данных, удобным для пользователя табличным представлением, а также возможностью использования формального аппарата алгебры отношений и реляционного исчисления для обработки данных. Отношение, или реляционная таблица, имеет прямоугольную структуру ("плоский файл") (рис. 19.28):

  Поле 1 Поле 2 ... Поле n
Запись 1        
Запись 2        
       
Запись m        

Рис. 19.28.Структура данных реляционной таблицы

Применительно к реляционной таблице используется следующая стандартная терминология. Столбцы таблицы называются атрибутами, полями реляционных таблиц или доменами. Строки таблицы соответствуют записям, кортежам отношения.

Условимся считать, что указанные термины имеют полноправное употребление и являются синонимами.

Схема реляционной таблицы образована именами полей, образующих структуру ее записи, например:

(Поле1, Поле2,.... Поле n)

Пример 19.42.Схема отношения:

СТУДЕНТ(Имя, Фамилия, Дата рождения, № зач.книжки,...).

В заполненном виде этой схеме соответствует таблица (рис. 19.29).

Студент
Имя Фамилия Дата рождения № зач. книжки и т.д.
Петр Иванов 12.12.80  
Марина Петрова 1.1.80  

Рис. 19.29.Фрагмент реляционной таблицы

Данные реляционной таблицы логически взаимосвязаны, описывают определенную сущность предметной области. Таблицы, или отношения, имеют наименования, раскрывающие содержательную сторону представляемой информации.

Для определенности изложения рассмотрим реляционную таблицу (рис. 19.29).

Таблица СТУДЕНТ содержит основные сведения о студентах учебного заведения. Каждое поле принимает определенное значение в строке таблицы, обладает определенным форматом, или типом данных: Фамилия – строка символов, Дата рождения – дата в формате ДД.ММ.ГГ.

Таблица имеет ключи – поле или группа полей, значение которых необходимо для идентификации строк (записей). Ключ обладает свойством уникальности значения, то есть неповторяемости в экземплярах записей.

Если ключей несколько, один из них в объявлении схемы принимается за первичный (основной). Прочие ключи называются возможными. По первичному ключу выполняется автоматическое упорядочение записей (сортировка в порядке возрастания значений ключа).

Пример 19.43.Таблица СТУДЕНТ содержит записи; для идентификации отдельной записи указывается значение ключа. В данном случае ключей несколько:

№ зач. книжки;

[Имя]+[Фамилия]+[Дата рождения].

Право выбора первичного ключа остается за пользователем, выбирается ключ, как правило, наиболее часто используемый для поиска записи.

Для эффективной реализации поиска и обработки данных создаются индексы, обеспечивающие формирование дополнительных индексных файлов (рис. 19.30).

Значение индекса Адрес записи, содержащей значение индекса
и1 и2 и3 и т.д. Адр2 Адр10 Адр1

Рис. 19.30.Индекс реляционной таблицы

При корректировке записей таблицы автоматически упорядочиваются индексы, изменяется местоположение каждого индекса – согласно принятому условию (возрастание или убывание значений); сами же записи реляционной таблицы не перемещаются при включении или удалении новых экземпляров записей, изменении значений их ключевых полей. Таким образом, индекс обеспечивает логическую последовательность записей в реляционной таблице, а также прямой доступ кзаписи по ее машинному или относительному адресу в файле реляционной таблицы.

Количество индексов, имена (идентификаторы) индексов, соответствие индексов полям таблицы определяются при создании схемы таблицы. В свою очередь, индексы можно создавать и удалять, оставляя неизменным содержание записей реляционной таблицы. Следует помнить, что большое число индексов замедляет корректировку записей в реляционной таблице.

Работа с данными осуществляется на уровне:

отдельной таблицы;

нескольких таблиц.

Наши рекомендации