пользователей: 30398
предметов: 12406
вопросов: 234839
Конспект-online
РЕГИСТРАЦИЯ ЭКСКУРСИЯ

I семестр:
» Базы данных

Реляционная модель данных. Основные понятия.

Реляционная модель данных ведет свою историю с публикации в 1970 году работы Эдгара Кодда «Реляционная модель данных для больших совместно используемых банков данных». Она основывается на математическом «фундаменте». Ключевое понятие реляционной модели – отношение (англ. Relation) определено в терминах теории множеств. Соответственно, операции над отношениями также основываются на операциях над множествами. Определение отношения, данное Коддом:

Для заданных множеств S1, S2, ..., Sn (не обязательно различных) R является отношением на этих n множествах, если представляет собой множество кортежей степени n, у каждого из которых первый элемент взят из множества S1, второй – из множества S2 и т.д.) Мы будем называть Sj j-тым доменом R. Говорят, что такое отношение R имеет степень n. Отношения степени 1 часто называют унарными, степени 2 – бинарными, степени 3 – тернарными и степени n – n-арными.

Множества S1, S2, …, Sn называют доменами. Домен можно считать некоторым дополнительным ограничением над базовым типом данных. Например, домен «возраст» может основываться на целочисленном типе данных, но дополнять его ограничениями снизу (>0) и сверху (<150). Кроме того, для возраста не имеют смысла операции деления и умножения, поэтому СУБД могла бы отслеживать попытки применения этих операций и запрещать их. Вхождение домена в отношение называется атрибутом.

Итак, отношение можно представить себе в виде таблицы, столбцы которой образуют атрибуты, а строки – кортежи. Атрибуты задают структуру отношения, а кортежи содержат данные.

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

Связи между сущностями реализуются при помощи так называемых внешних ключей. Внешний ключ – это первичный ключ главного отношения, перенесенный в подчиненное отношение. Например, если у нас есть отношение Группа с ключом ШифрГруппы, то если мы захотим связать его с отношением Студент, мы должны добавить поле ШифрГруппы. При этом реляционная СУБД может поддерживать ссылочную целостность базы данных, то есть следить за тем, чтобы в качестве значения атрибута ШифрГруппы отношения Студент задавались шифры только имеющихся групп. Фундаментальные свойства отношений:

Атомарность значений атрибутов. «Атомарность» означает неделимость, то есть, значения атрибутов не имеют внутренней структуры и рассматриваются СУБД как целое.

Отсутствие кортежей-дубликатов. Данное свойство вытекает из самого определения отношения. В декартовом произведении множеств значений доменов, составляющих переменную отношения дубликатов быть не может (по определению). Соответственно, и в отношении, являющемся подмножеством этого декартова произведения, также не может оказаться дубликатов кортежей.

Отсутствие упорядоченности кортежей. Кортежи в отношении могут располагаться в любом порядке. Если имеется два отношения, отличающиеся только порядком следования кортежей, то они эквивалентны друг другу. Как следствие, понятия «предыдущий кортеж» и «следующий кортеж», а также операции перемещения по кортежам в реляционной модели не определены.

Отсутствие упорядоченности атрибутов. Атрибуты в отношении также могут располагаться в любом порядке. В своей работе Кодд обращает внимание на то, что порядок атрибутов важен в ситуации, когда домен входит в одно отношение дважды. Например, у нас может иметься отношение СоставИзделия, которое описывает порядок сборки того или иного изделия. Предположим, что в этом отношении имеются атрибуты Изделие, Изделие, Количество. Первое вхождение домена Изделие означает целое, а второе – часть, которая в него входит. Разумеется, если здесь поменять местами атрибуты, то корректность данных может и нарушится. Для решения проблемы можно заменить имена на Изделие.Целое и Изделие.Часть. В этом случае перестановка их местами не внесет путаницы.

В других определениях: отношения - набор однотипных объектов. Отношение  можно представить в виде таблицы, столбцы которой образуют атрибуты, а строки - кортежи. Атрибут - свойство, характеризующее отношение. 


27.01.2014; 20:29
хиты: 468
рейтинг:0
Точные науки
информатика
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2024. All Rights Reserved. помощь