Android Linux Windows

Основным достоинством реляционной модели данных является. Структура реляционной модели данных

Основной структурой данных в реляционной модели (РМД) является отношение, поэтому модель получила название реляционная (relation – отношение).

В РМД данные организованы в таблицы , которые должны удовлетворять определенным ограничениям, и могут рассматриваться как отношения .

Табличное представление было предложено американским математиком Э.Ф. Коддом в начале 70-х годов и реализовано фирмой IBM в начале 80-х. Двумерная таблица – это один из самых простых способов представления данных для пользователя или программиста.

Табличное представление отношения «Служащие» приведено в табл.1.

Табл.1. Отношение «Служащие» – таблица «Служащие»

В РМД используются формальные реляционные термины, которые могут заменяться неформальными. Соответствие формальных и неформальных терминов представлено в табл.2.

Табл.2. Соответствие неформальных и формальных терминов РМД

Модель имеет серьезную теоретическую основу – теория множеств и математическая логика.

Основные понятия реляционной модели:

- тип данных, значение;

- домен;

- атрибут;

- кортеж;

- ключ;

- отношение.

Понятие типа данных эквивалентно понятию типа данных в алгоритмических языках. Атомарное значение данных – это наименьшая неделимая единица данных в РМД.

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

Атрибут – это именованный столбец отношения, значения элементов столбца должны быть из одного домена.

Пусть дана совокупность доменов D 1 , D 2 ,…,D N (не обязательно различных).

Кортеж отношения – это набор из N значений, расположенных в строго определенном порядке (d 1 , d 2 ,…,d N), таких, что d 1 принадлежит D 1 , d 2 принадлежит D 2 , а d N принадлежит D N . Количество элементов в кортеже называется арностью.



Полное декартово произведение доменов D 1 x D 2 x…x D N – это множество всевозможных различных кортежей арности N, где каждый элемент кортежа берется из своего домена (пример: D1(№гр), D2(Фам_студ), D3(Стип)).

Отношение R , определенное на этих N доменах, является подмножеством полного декартового произведения исходных доменов.

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

Кортеж, соответствующий данной схеме отношения, представляет собой множество пар {имя атрибута, значение}, которое содержит одно вхождение каждого имени атрибута, принадлежащего схеме отношения.

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

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

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

Ограничения реляционной модели (свойства таблиц):

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

2. Каждый элемент таблицы должен быть атомарным , т.е. неделимым.

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

4. Каждому столбцу присвоено уникальное имя. Элементы одного столбца должны быть однородными, извлечены из одного домена.

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

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

Более короткая форма записи таблицы «Служащие» или схема отношения «Служащие» (первичный ключ отношения подчеркнут):

Служащие(Таб_номер , Фамилия, Отдел, Дата_рожд, Должность, Зарплата)

В общем виде схема отношения записывается как

R(a 1 , a 2 , ..., a N), где а i – имя i-ого атрибута отношения R.

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

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

При описании подсхемы БД могут быть заданы все необходимые ограничения, например: пароль доступа к отношению или его атрибутам, режим обработки отношения или его атрибутов - "только чтение" или "чтение и запись" и другие.

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

Особенность РМД в том, что и объекты, и связи между ними представляются в единой форме, в виде таблиц.

В отличие от иерархической и сетевой моделей связи между отношениями поддерживаются неявно . В РМД поддерживаются бинарные связи типа «1:1», «1:M», «M:1». В каждой связи одно отношение выступает как основное (со стороны 1), а другое как подчиненное (со стороны М). Это означает, что один кортеж основного отношения может быть связан с несколькими кортежами подчиненного отношения.

Связь поддерживается связующим набором атрибутов, в основном отношении это первичный ключ (primary key) , который должен присутствовать в подчиненном отношении, как вторичный ключ. Этот набор атрибутов в подчиненном отношении называют внешним ключом (foreign key) .

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

Рассмотрим пример поддержания связи типа «1:М» между отношениями «Группа» и «Студенты». Основным отношением является отношение «Группа», первичный ключ отношения - атрибут «Номер_группы». Подчиненным отношением является отношение «Студенты», первичный ключ отношения – «Номер_зачетной_книжки». В отношении «Студенты» должен присутствовать атрибут «Номер_группы», как внешний ключ для связи с основным отношением. Именно этот атрибут и позволяет определить информацию о группе, в которой студент обучается.

Схема основного отношения «Группа»:

Группа (№_группы , Специальность)

Схема подчиненного отношения «Студенты»:

Студенты (№_зачетной_книжки , Фамилия, Дата_рождения, №_группы )

(В схемах отношений первичные ключи подчеркнуты, вторичный выделен курсивом).

Примеры СУБД РМД: DBase, FoxPro, Clipper, Paradox, MS Access, Informix, Oracle и др.

Любая структура данных может быть сведена к двумерным таблицам. Рассмотрим пример преобразования иерархической МД, представленной на рис., в реляционную БД, т.е. в совокупность взаимосвязанных отношений.

Для каждого узла древовидной структуры создается отдельное отношение, т.е. создаются отношения «Отделы», «Служащие», «Трудовая_деятельность», «Дети», «Работы». В каждое отношение, соответствующее подчиненному узлу, добавляется идентификатор исходного узла. В результате получим реляционную БД, состоящую из следующих отношений:

Отделы (Номер_отдела , Наименование)

Служащие (Таб_номер , Фамилия, Зарплата, Номер_отдела )

Трудовая_деятельность (Номер_приказа , Содержание_приказа, Таб_номер )

Дети (Имя_ребенка, Таб_номер , Дата_рождения)

Работы (Шифр_работы , Наименование, Дата_завершения, Номер_отдела )

Достоинства реляционной модели:

– простота и наглядность модели;

– однородность структур для представления объектов и связей;

– возможность манипулировать данными без необходимости знания конкретной физической организации БД во внешней памяти;

– возможность использовать непроцедурные языки запросов малоподготовленными пользователями БД.

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

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

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

Этот цикл статей описывает волновую модель мозга, серьезно отличающуюся от традиционных моделей. Настоятельно рекомендую тем, кто только присоединился, начинать чтение с первой части .

В 1970 году Эдгар Кодд опубликовал статью (Codd, 1970), в которой описал основы реляционной модели хранения данных. Практической реализацией этой модели стали все современные реляционные базы данных. Формализация модели привела к созданию реляционного исчисления и реляционной алгебры.

Основной элемент реляционной модели – это кортеж. Кортеж – это упорядоченный набор элементов, каждый из которых принадлежит определенному множеству или, иначе говоря, имеет свой тип. Совокупность однородных по структуре кортежей образует отношение.

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


Пример отношения (Заборов)

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

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

  • Объединение;
  • Пересечение;
  • Вычитание;
  • Декартово произведение;
  • Выборка;
  • Проекция;
  • Соединение;
  • Деление.
Замечательное свойство реляционной алгебры – это ее замкнутость, то есть операции над отношениями задаются таким образом, чтобы результат сам был отношением. То есть, имея несколько таблиц и производя соответствующие операции над ними, мы получим результатом тоже таблицу.

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


Пример операций над кортежами (Заборов)

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

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

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

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

Описываемая нами система идентификаторов, понятий и событийной памяти во многом очень похожа на реляционную модель. Можно привести ряд аналогий:

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

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

Информация, данные, информационные системы

Понятие отношения

Реляционная модель данных была предложена Е.Ф. Коддом в 1970 году и получила к настоящему времени широкое распространение и популярность. Этому способствовали два ее существенных достоинства: 1) однородность представления данных в модели, которая обусловливает простоту восприятия ее конструкций пользователями базы данных , и 2) наличие развитой математической , которая обусловливает корректность ее применения.

В основе реляционной модели данных лежит понятие отношения, которое задается списком своих элементов и перечислением их значений. Рассмотрим пример на рис. 4.1 . На нем представлено расписание движения автобусов по маршруту "Москва - Черноголовка - Москва". Налицо определенная структура. Каждый включенный в расписание рейс имеет свой номер, время отправления и время в пути. Расписание может быть представлено таблицей. Заголовки колонок таблицы носят название атрибутов . Список их имен носит названия схемы отношения . Каждый атрибут определяет тип представляемых им данных, который вместе с областью его значений называется доменом. Вся таблица целиком называется отношением, а каждая строка таблицы носит название кортежа отношения . Таким образом, отношение можно представить в виде двумерной таблицы.


Рис. 4.1. Расписание движения автобусов по маршруту "Москва - Черноголовка - Москва" как отношение

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

Введем ряд математических определений, связанных с понятием отношения.

Определение 1. Декартово произведение Пусть D 1 , D 2 , ..., D n - произвольные конечные множества, не обязательно различные. Декартовым произведением этих множеств называется множество вида Пример:

Определение 2. Схема отношения

Пусть - имена атрибутов. Схемой r отношения R называется конечное множество имен атрибутов

Определение 3. Отношение

Отношением со схемой r на конeчных множествах D 1 , D 2 ,…, D n называется подмножество R декартового произведения

Элементы отношения (d 1 , d 2 , ..., d n) , как уже упоминалось выше, называются кортежами. О каждом отношении, являющимся подмножеством декартового произведения можно сказать, что оно имеет арность n . Кортеж (d 1 , d 2 , ..., d n) имеет n компонентов. Для обозначения кортежа применяется и сокращенная форма записи d 1 , d 2 , ..., d n . Использование понятия декартового произведения для определения отношения в реляционной модели данных делает модель конструктивной. На математическом языке это означает, что все остальные понятия модели определяются в рамках строго математического построения на базе декартового произведения.

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

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

Существует определенное различие между математическим определением отношения и действительным хранением отношений в памяти компьютера. По определению, отношение не может иметь два идентичных кортежа. Однако СУБД, поддерживающие реляционную модель данных , хранят отношения в файлах операционной системы компьютера. Размещение отношений в файлах операционной системы допускает хранение идентичных кортежей. Если не используется специальная техника (контроль целостности по первичному ключу ), то обычно большинство промышленных СУБД допускают хранение двух идентичных кортежей в базе данных.

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

Часть 2. Реляционная модель данных

Реляционная модель является удобной и наиболее привыч­ной формой представления данных в виде таблицы.

В отличие от иерархической и сетевой моделей, такой способ представления:

1. понятен пользователю-непрограммисту;

2. позволяет легко изменять схему - присоединять новые элементы данных и запи­си без изменения соответствующих подсхем;

3. обеспечивает не­обходимую гибкость при обработке непредвиденных запросов. К тому же любая сетевая или иерархическая схема может быть представлена двумерными отношениями.

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

Пользо­ватель модели сам должен для себя решить вопрос, обладают ли соответствующие сущности реального мира однородностью. Этим самым решается проблема пригодности модели для пред­полагаемого применения.

Основными понятиями, с помощью которых определяется реляционная модель, являются следующие:

1. домен,

2. отношение,

3. кортеж,

4. кардинальность,

5. атрибуты,

6. степень,

7. первичный ключ.

Соотношение этих понятий иллюстрируется рисунок 7.

Рис. 7. Основные понятия реляционной модели


Таблица 7.

Эти поня­тия представляют специальную терминологию, введенную авто­рами теоретических основ, однако они имеют и более привыч­ные аналоги (но не во всем эквиваленты), соответствие которых приведено в следующей таблице 1.

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

В математических дисциплинах понятию «таблица» соответствует понятие «отношение» (relation). Отсюда и произошло название модели - реляционная. То есть, применительно к базам данных понятия «реляци­онная БД» и «табличная БД» по существу являются синонимами.

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

Остальные ключи, которые можно также использовать в ка­честве первичных, называются потенциальными или альтерна­тивными ключами.



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

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

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

Модель предъявляет к таблицам следующие требования:

1. данные в ячейках таблицы должны быть структурно неде­лимыми 1 ;

2. данные в одном столбце должны быть одного типа;

3. каждый столбец должен быть уникальным (недопустимо дублирование столбцов);

4. столбцы размещаются в произвольном порядке;

5. строки размещаются в таблице также в произвольном по­рядке;

6. столбцы имеют уникальные наименования.

В целом концепция реляционной модели определяется сле­дующими двенадцатью правилами Кодда (в лекции правила приводятся по ).

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

2. Правило гарантированного доступа. Логический доступ ко всем и каждому элементу данных (атомарному значению) в ре­ляционной базе данных должен обеспечиваться путем использования комбинации имени таблицы, первичного ключа и имени столбца.

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

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

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

Определение данных;

Определение представлений;

Обработку данных (интерактивную и программную);

Условия целостности;

Идентификацию прав доступа;

Границы транзакций (начало, завершение и отмена).

6. Правило обновления представлений. Все представления, ко­торые теоретически можно обновить, должны быть доступны для обновления.

7. Правило добавления, обновления и удаления. Возможность работать с отношением как с одним операндом должна сущест­вовать не только при чтении данных, но и при добавлении, об­новлении и удалении данных.

8. Правило независимости физических данных. Прикладные программы и утилиты для работы с данными должны на логиче­ском уровне оставаться нетронутыми при любых изменениях способов хранения данных или методов доступа к ним.

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

10. Правило независимости условий целостности. Должна су­ществовать возможность определять условия целостности, спе­цифические для конкретной реляционной базы данных, на подъязыке реляционной базы данных и хранить их в каталоге, а не в прикладной программе.

11. Правило независимости распространения. Реляционная СУБД не должна зависеть от потребностей конкретного клиента.

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

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

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

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

Правило 5 требует, чтобы СУБД использовала язык реляци­онной базы данных, например SQL. Такой язык должен поддержи­вать все основные функции СУБД - создание базы данных, чте­ние и ввод данных, реализацию защиты базы данных и т. д.

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

Правило 7 акцентирует внимание на том, что базы дан­ных по своей природе ориентированы на множества. Оно требу­ет, чтобы операции добавления, удаления и обновления можно было выполнять над множествами строк. Это правило предназначено для того, чтобы запретить реализации, в которых под­держиваются только операции над одной строкой.

Правила 8 и 9 означают отделение пользователя и прикладной программы от низкоуровневой реализации базы данных. Они утверждают, что конкретные способы реализации хранения или доступа, используемые в СУБД, и даже изменения структуры таблиц базы данных не должны влиять на возмож­ность пользователя работать с данными.

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

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

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

Литература

1. Дейт К. Введение в системы баз данных: Пер. с англ. - М.: Наука, 1980.- 463 с.

2. Грофф Дж., Ваинберг П. SQL: полное руководство / Пер. с англ. 2-е изд. К.: BHV, 2001.

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

  • Аспект (составляющая) обработки (манипулирования) - РМД поддерживает операторы манипулирования отношениями (реляционная алгебра , реляционное исчисление).
  • Кроме того, в состав реляционной модели данных включают теорию нормализации .

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

    Для лучшего понимания РМД следует отметить три важных обстоятельства:

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

    Принципы реляционной модели были сформулированы в -1970 годах Э. Ф. Коддом (E. F. Codd) . Идеи Кодда были впервые публично изложены в статье «A Relational Model of Data for Large Shared Data Banks» , ставшей классической.

    Строгое изложение теории реляционных баз данных (реляционной модели данных) в современном понимании можно найти в книге К. Дж. Дейта . «C. J. Date. An Introduction to Database Systems» («Дейт, К. Дж. Введение в системы баз данных»).

    Наиболее известными альтернативами реляционной модели являются иерархическая модель , и сетевая модель . Некоторые системы, использующие эти старые архитектуры, используются до сих пор. Кроме того, можно упомянуть об объектно-ориентированной модели , на которой строятся так называемые объектно-ориентированные СУБД , хотя однозначного и общепринятого определения такой модели нет.

    Примечания

    Литература

    • Дейт К. Дж. Введение в системы баз данных = Introduction to Database Systems. - 8-е изд. - М .: «Вильямс», 2006. - 1328 с. - ISBN 0-321-19784-4
    • Томас Коннолли, Каролин Бегг Базы данных. Проектирование, реализация и сопровождение. Теория и практика = Database Systems: A Practical Approach to Design, Implementation, and Management Third Edition. - 3-е изд. - М .: «Вильямс», 2003. - С. 1436. - ISBN 0-201-70857-4
    • Кузнецов С. Д. Основы баз данных. - 2-е изд. - М .: Интернет-Университет Информационных Технологий; БИНОМ. Лаборатория знаний, 2007. - 484 с. - ISBN 978-5-94774-736-2
    • Когаловский М.Р. Энциклопедия технологий баз данных. - М .: Финансы и статистика, 2002. - С. 800. - ISBN 5-279-02276-4

    Wikimedia Foundation . 2010 .

    Смотреть что такое "Реляционная модель данных" в других словарях:

      Разработанная Э.Коддом в 1970г. логическая модель данных, описывающая: структуры данных в виде (изменяющихся во времени) наборов отношений; теоретико множественные операции над данными: объединение, пересечение, разность и декартово произведение; … Финансовый словарь

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

      Реляционная модель данных - 61. Реляционная модель данных Модель данных, основанная на представлении данных в виде набора отношений, каждое из которых представляет собой подмножество декартова произведения определенных множеств, и манипулировании ими с помощью множества… … Словарь-справочник терминов нормативно-технической документации

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

      реляционная база данных - База данных, реализованная в соответствии с реляционной моделью данных. [ГОСТ 20886 85] реляционная БД База данных, логически организованная в виде набора отношений ее компонентов. Характерной особенностью реляционной базы данных является… … Справочник технического переводчика

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

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

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

      Необходимо перенести в эту статью содержимое статьи Сетевая СУБД и поставить оттуда перенаправление. Вы можете помочь проекту, объединив статьи (cм. инструкцию по объединению). В случае необходимости обсуждения целесообразности объединения,… … Википедия

      - (англ. Associative model of data) это предложенная Саймоном Уильямсом:2 модель представления данных, в которой база данных состоит из двух типов структур данных элементов и ссылок, хранимых в единой однородной общей… … Википедия