Отношение (реляционная модель)

Отношение (реляционная модель)

Отношение — фундаментальное понятие реляционной модели данных. По этой причине модель и называется реляционной (от лат. relatio — отношение, связь).

Содержание

Определения

n-арным отношением R, или отношением R степени n, называют подмножество декартовa произведения множеств D_1, D_2, ..., D_n (n\ge 1), не обязательно различных. Исходные множества D_1, D_2, ..., D_n называют в модели доменамиСУБД используется понятие множество значений, определяемых типом данных).

Отношение имеет простую графическую интерпретацию в виде таблицы, столбцы (поля, атрибуты) которой соответствуют вхождениям доменов в отношение, а строки (записи) — наборам из n значений, взятых из исходных доменов. Число строк (кортежей) называют кардинальным числом отношения (кардинальностью), или мощностью отношения.

Такая таблица обладает рядом свойств:

  1. В таблице нет двух одинаковых строк.
  2. Таблица имеет столбцы, соответствующие атрибутам отношения.
  3. Каждый атрибут в отношении имеет уникальное имя.
  4. Порядок строк в таблице произвольный.

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

Формализованное определение введённых понятий.

  • Заголовок Hr (или схема) отношения r — конечное множество упорядоченных пар вида <A, T>, где A называется именем атрибута, а T обозначает имя некоторого базового типа или ранее определенного домена, то есть множества допустимых значений. По определению требуется, чтобы все имена атрибутов в заголовке отношения были различны.
  • Кортеж tr, соответствующий заголовку Hr — множество упорядоченных триплетов вида <A, T, v>, по одному такому триплету для каждого атрибута в Hr. Третий элемент — v — триплета <A, T, v> должен являться допустимым значением типа данных или домена T. Замечание: так как имена атрибутов уникальны, то указание домена в кортеже излишне.
  • Тело Br отношения — неупорядоченное множество различных кортежей tr.
  • Значением Vr отношения r называется пара множеств Hr и Br.

Полезно также понятие первичного ключа — это такой набор атрибутов, который однозначно определяет кортеж и минимален среди всех своих подмножеств (то есть нельзя убрать ни один из атрибутов). При добавлении новых записей первичный ключ обязан оставаться первичным ключом (например, неверным будет использование в качестве первичного ключа набора Имя + Отчество + Фамилия сотрудника, даже если на момент создания таблицы полных тёзок среди заносимых в неё людей не было).

Пример

Допустим, содержание доменов следующее:

  • D_1 = {Иванов, Петров, Сидоров}
  • D_2 = {Физика, Химия}
  • D_3 = {3,4,5}

Тогда полное декартово произведение состоит из 18 троек, где первый элемент тройки — одна из фамилий, второй элемент — учебная дисциплина, а третий — оценка.

Тогда отношение R может моделировать реальную ситуацию и содержать пять строк, которые соответствуют результатам сессии (Петров экзамен по Физике не сдавал):

R
Фамилия Предмет Оценка
Иванов Физика 4
Иванов Химия 3
Петров Химия 5
Сидоров Физика 5
Сидоров Химия 4

Операции, определённые над отношениями

См. также: реляционная алгебра, реляционное исчисление.

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

В полученном объекте могут появиться одинаковые кортежи (например, при проецировании отношения из примера на отношение, заголовок которого состоит из единственного атрибута — фамилии, получим две пары одинаковых кортежей (два Иванова и два Сидорова) и ещё один кортеж (Петров). Необходимо удалить дубликаты, чтобы этот объект являлся отношением (тогда будет один Иванов, один Петров и один Сидоров).

Пример деления

Делимое:

Атрибут A Атрибут B Атрибут C
a c d
b c d
a p q
b x y

Делитель:

Атрибут A
a
b

Частное:

Атрибут B Атрибут C
c d

Остаток от деления:

Атрибут A Атрибут B Атрибут C
a p q
b x y

Чтобы было проще понять этот пример, сравните его с обычной алгеброй: умножьте делитель на частное (декартово произведение), прибавьте остаток от деления (объединение), и Вы получите делимое. То есть если a/b=c, и остаток=d, тогда b*c+d=a.

Литература



Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Полезное


Смотреть что такое "Отношение (реляционная модель)" в других словарях:

  • Реляционная модель данных — (РМД)  логическая модель данных, прикладная теория построения баз данных, которая является приложением к задачам обработки данных таких разделов математики как теории множеств и логика первого порядка. На реляционной модели данных строятся… …   Википедия

  • Реляционная модель — данных логическая модель данных, строгая математическая теория, описывающая структурный аспект, аспект целостности и аспект обработки данных в реляционных базах данных. Структурный аспект (составляющая) данные в базе данных представляют собой… …   Википедия

  • Реляционная алгебра — Реляционная алгебра  замкнутая система операций над отношениями в реляционной модели данных. Операции реляционной алгебры также называют реляционными операциями. Первоначальный набор из 8 операций был предложен Э. Коддом в 1970 е годы и… …   Википедия

  • Реляционная СУБД — (РСУБД; иначе Система управления реляционными базами данных, СУРБД)  СУБД, управляющая реляционными базами данных. Понятие реляционный (англ. relation  отношение) связано с разработками известного английского специалиста в области… …   Википедия

  • Реляционная база данных — Реляционная база данных  база данных, основанная на реляционной модели данных. Слово «реляционный» происходит от англ. relation (отношение[1]). Для работы с реляционными БД применяют реляционные СУБД. Использование реляционных баз… …   Википедия

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

  • Модель данных — В классической теории баз данных, модель данных есть формальная теория представления и обработки данных в системе управления базами данных (СУБД), которая включает, по меньшей мере, три аспекта: 1) аспект структуры: методы описания типов и… …   Википедия

  • Отношение (значения) — Отношение: Отношение философская категория или научный термин (научное понятие), обозначающие любое относительное понятие, реальным коррелятом которого является определенное соотнесение (связь) двух и более предметов. Синоним: координация. См.… …   Википедия

  • Объектно-реляционная СУБД — Эта статья должна быть полностью переписана. На странице обсуждения могут быть пояснения. Объектно реляционная СУБД (ОРСУБД) реляционная СУБД (РСУБД), поддерживающая неко …   Википедия

  • Иерархическая модель данных — Иерархическая модель данных  представление базы данных в виде древовидной (иерархической) структуры, состоящей из объектов (данных) различных уровней. Между объектами существуют связи, каждый объект может включать в себя несколько объектов… …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»