русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Фундаментальные свойства отношений.


Дата добавления: 2013-12-23; просмотров: 3822; Нарушение авторских прав


D1, D2, ..., Dn

Основные определения реляционных БД.

Глава

Тема 2.3 Электропусковые системы.

Й семестр

Организация реляционных баз данных.

 

Работы над построением реляционных моделей данных ведутся с конца 60-х годов. Термин Реляционная СУБД впервые был использован Коддом (Codd E.F) в 1970 году. Кодд предложил использовать для обработки данных аппарат теории множеств (объединение, пересечение, разность, декартово произведение). Он показал, что любое представление данных сводится к совокупности двумерных таблиц особого вида, известного в математике как отношение – relation (англ.). в настоящее время благодаря своей простоте реляционные СУБД доминируют на рынке СУБД.

 

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

 

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

 

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

 

 

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

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



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

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

Заголовоксостоит из такого фиксированного множества атрибутов A1, A2, ..., An, что существует взаимно однозначное соответствие между этими атрибутами Ai и определяющими их доменами Di (i=1,2,...,n).

Тело состоит из меняющегося во времени множества кортежей, где каждый кортеж состоит в свою очередь из множества пар атрибут-значение (Ai:Vi), (i=1,2,...,n), по одной такой паре для каждого атрибута Ai в заголовке. Для любой заданной пары атрибут-значение (Ai:Vi) Vi является значением из единственного домена Di, который связан с атрибутом Ai.

Степень отношения – это число его атрибутов. Отношение степени один называют унарным, степени два – бинарным, степени три – тернарным, ..., а степени n – n-арным.

Кардинальное число или мощность отношения – это число его кортежей. Кардинальное число отношения изменяется во времени в отличие от его степени.

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

Пусть R – отношение с атрибутами A1, A2, ..., An. Говорят, что множество атрибутов K=(Ai, Aj, ..., Ak) отношения R является возможным ключом R тогда и только тогда, когда удовлетворяются два независимых от времени условия:

a) Уникальность: в произвольный заданный момент времени никакие два различных кортежа R не имеют одного и того же значения для Ai, Aj, ..., Ak.

b) Минимальность: ни один из атрибутов Ai, Aj, ..., Ak не может быть исключен из K без нарушения уникальности.

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

 

Для пользователя реляционных СУБД можно использовать неформальные эквиваленты этих понятий:

Отношение – это таблица либо файл данных

Кортеж – это Строка (иногда Запись),

Атрибут – это Столбец либо Поле.

При этом принимается, что "запись" означает "экземпляр записи", а "поле" означает "имя и тип поля".

 

Рисунок – отношение с математической точки зрения

 

 
 

 

 

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

Для каждого отношения реляционной БД должны выполняться следующие свойства :

1. . Каждая таблица состоит из однотипных строк и имеет уникальное имя.

2. Строки имеют фиксированное число полей (столбцов) и значений. Множественные поля и повторяющиеся группы полей недопустимы. Поэтому каждой позиции таблицы на пересечении строки и столбца всегда имеется в точности одно значение.

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

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

5. Полное информационное содержание базы данных представляется в виде явных значений данных, и такой метод представления является единственным.

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

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

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

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

 



<== предыдущая лекция | следующая лекция ==>
 | Реляционная алгебра.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.005 сек.