Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Связь, кортеж и атрибут представлены в виде таблицы, строки и столбца соответственно.

В теории реляционных баз данных отношение , как первоначально определил EF Codd , [1] - это набор кортежей (d 1 , d 2 , ..., d n ), где каждый элемент d j является членом D j , домен данных . Несмотря на исходное определение Кодда и вопреки обычному определению в математике, нет никакого упорядочивания элементов кортежей отношения. [2] [3] Вместо этого каждый элемент называется значением атрибута . атрибут- это имя, связанное с доменом (в настоящее время его чаще называют типом или типом данных ). Значение атрибута является именем атрибута в паре с элементом домена этого атрибута, и кортежем является набором значений атрибутов , в котором не существует два различных элементов не имеют такое же имя. Таким образом, в некоторых учетных записях кортеж описывается как функция , отображающая имена в значения.

Набор атрибутов, в котором нет двух разных элементов с одинаковыми именами, называется заголовком . Из приведенных выше определений следует, что каждому кортежу соответствует уникальный заголовок, представляющий собой набор имен из кортежа в паре с доменами, из которых берутся элементы домена кортежа. Набор кортежей, которые соответствуют одному заголовку, называется телом . Таким образом, отношение - это заголовок, соединенный с телом, причем заголовок отношения также является заголовком каждого кортежа в его теле. Количество атрибутов, составляющих заголовок, называется степенью , этот термин также применяется к кортежам и отношениям. Термин n -набор относится к набору степени n ( n ≥ 0).

Э. Ф. Кодд использовал термин «отношение» в его математическом смысле для обозначения конечного отношения , набора кортежей на некотором наборе из n множеств S 1S 2 , ...., S n . [4] Таким образом, n- мерное отношение интерпретируется в соответствии с предположением о замкнутом мире как расширение некоторого n -адического предиката : все и только те n -наборы, значения которых, замененные соответствующими свободными переменными в предикате, дают пропозиции которые верны, появляются в отношении.

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

Иногда предполагается, что схема отношения включает имя. [5] [6] Определение реляционной базы данных ( схема базы данных , иногда называемая реляционной схемой), таким образом, может рассматриваться как набор именованных схем отношений . [7] [8]

В реализациях домен каждого атрибута фактически является типом данных [9], а именованная схема отношения фактически является переменной отношения ( для краткости relvar ).

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

Примеры [ править ]

Ниже приведен пример отношения, имеющего три именованных атрибута: «ID» из домена целых чисел и «Имя» и «Адрес» из домена строк :

Предикат для этого отношения, использующий имена атрибутов для обозначения свободных переменных, может быть таким: « Идентификатор номера сотрудника известен как имя и живет по адресу ». Исследование отношения показывает, что существует всего четыре кортежа, для которых предикат верен. Так, например, сотрудник 102 известен только под этим именем, Ёнэдзава Акинори, и не живет больше нигде, кроме Наха, Окинава. Кроме того, кроме четырех показанных сотрудников, нет другого сотрудника, у которого есть и имя, и адрес.

Согласно определению тела , кортежи тела не появляются в каком-либо определенном порядке - нельзя сказать: «Кортеж« Мурата Макото »выше кортежа« Мацумото Юкихиро »», а также нельзя сказать «Кортеж из» Ёнэдзава Акинори '- первый кортеж ". Аналогичный комментарий относится к строкам таблицы SQL.

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

Переменные отношения [ править ]

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

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

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

Используя язык определения данных (DDL), он может определять базовые переменные отношения. В SQL CREATE TABLEдля определения базовых таблиц используется синтаксис. Ниже приводится пример.

CREATE  TABLE  List_of_people  (  ID  INTEGER ,  Имя  CHAR ( 40 ),  Адрес  CHAR ( 200 ),  PRIMARY  KEY  ( ID ) )

Язык определения данных (DDL) также используется для определения переменных производных отношений. В SQL CREATE VIEWсинтаксис используется для определения производной переменной отношения. Ниже приводится пример.

СОЗДАТЬ  ПРОСМОТР  List_of_Okinawa_people  КАК  (  SELECT  ID ,  Name ,  Address  FROM  List_of_people,  ГДЕ  Address  LIKE  '%, Okinawa' )

См. Также [ править ]

  • Relvar (реляционная переменная)

Ссылки [ править ]

  1. EF Codd (октябрь 1972 г.). «Дальнейшая нормализация реляционной модели базы данных». Системы баз данных . Институт Куранта: Прентис-Холл. ISBN 013196741X. R является отношением на этих n областях, если это набор элементов вида (d 1 , d 2 , ..., d n ), где d j ∈ D j для каждого j = 1,2, ..., п.
  2. Перейти ↑ CJ Date (май 2005 г.). База данных в глубине . О'Рейли. п. 42. ISBN 0-596-10012-4. ... в кортежах нет порядка следования атрибутов слева направо ...
  3. ^ EF Кодда (1990). Реляционная модель для управления базами данных, версия 2 . Эддисон-Уэсли. п. 3. ISBN 0-201-14192-2. Одна из причин полного отказа от позиционных концепций в отношениях реляционной модели заключается в том, что нет ничего необычного в том, чтобы найти отношения базы данных, каждое из которых имеет до 50, 100 или даже 150 столбцов.
  4. Кодд, Эдгар Ф (июнь 1970 г.). «Реляционная модель данных для больших общих банков данных» (PDF) . Коммуникации ACM . 13 (6): 377–87. DOI : 10.1145 / 362384.362685 . Термин отношение используется здесь в его общепринятом математическом смысле.
  5. Джеффри Д. Ульман (1989). Принципы баз данных и систем баз знаний . Джеффри Уллман. С. 410– . Проверено 28 ноября 2012 года .
  6. ^ Деннис Эллиотт Шаша; Филипп Бонне (2003). Настройка базы данных: принципы, эксперименты и методы устранения неполадок . Морган Кауфманн. п. 124. ISBN 978-1-55860-753-8.
  7. ^ Питер Роб; Карлос Коронель, Питер Роб (2009). Системы баз данных: проектирование, внедрение и управление . Cengage Learning. С. 190–. ISBN 978-1-4239-0201-0. Проверено 28 ноября 2012 года .
  8. ^ Т.А. Халпин; Энтони Дж. Морган (2008). Информационное моделирование и реляционные базы данных . Морган Кауфманн. С. 772–. ISBN 978-0-12-373568-3. Проверено 28 ноября 2012 года .
  9. ^ Майкл Ф. Уорбойз (1995). ГИС: вычислительная перспектива . Тейлор и Фрэнсис. С. 57–. ISBN 978-0-7484-0065-2. Проверено 22 ноября 2012 года .
  • Дата, CJ (2004). Введение в системы баз данных (8-е изд.). Аддисон-Уэсли . ISBN 978-0-321-19784-9.