Реляционная модель данных Реляционная модель предложена сотрудником компании IBM Е.Ф.Коддом в 1970 г. В настоящее время эта модель является фактическим стандартом, на который ориентируются практически все современные коммерческие СУБД. Достоинства: Простота Удобство Недостатки: ×сложность описания ×иерархических ×и сетевых структур Структура данных Представление данных не зависит от способа их физической организации. Это обеспечивается за счет использования математической теории отношений (само название "реляционная" происходит от английского relation - "отношение"). Определения Декартово произведение: Для заданных конечных множеств (не обязательно различных) декартовым произведением называется множество произведений вида: где , . Пример Если даны два множества A (a1,a2,a3) и B (b1,b2), их декартово произведение будет иметь вид С=A*B (a1*b1, a2*b1, a3*b1, a1*b2, a2*b2, a3*b2) Отношение: Отношением R, определенным на множествах называется подмножество декартова произведения . Пример 2 На множестве С из предыдущего примера могут быть определены отношения R1 (a1*b1, a3*b2) или R2 (a1*b1, a2*b1, a1*b2) Отношения удобно представлять в виде таблиц. Строки таблицы соответствуют кортежам. Каждая строка фактически представляет собой описание одного объекта, характеристики которого содержатся в столбцах. Столбцы в таблице, представляющей реляционное отношение, называют атрибутами. Термины, которыми оперирует реляционная модель данных, имеют соответствующие "табличные" синонимы: Реляционный термин Соответствующий "табличный" термин База данных Набор таблиц Схема базы данных Набор заголовков таблиц Отношение Таблица Заголовок отношения Заголовок таблицы Тело отношения Тело таблицы Атрибут отношения Наименование столбца таблицы Кортеж отношения Строка таблицы Степень (-арность) отношения Количество столбцов таблицы Мощность отношения Количество строк таблицы Домены и типы данных Типы данных в ячейках таблицы Основные компоненты реляционного отношения Каждый атрибут определен на домене, поэтому домен можно рассматривать как множество допустимых значений данного атрибута. В примере атрибуты "Оклад" и "Премия" определены на домене "Деньги". !Данные можно считать сравнимыми только тогда, когда они относятся к одному домену. ! Атрибут, значение которого однозначно идентифицирует кортежи, называется ключевым (или просто ключом). В нашем случае ключом является атрибут "Табельный номер" . Отношение может содержать несколько ключей. Всегда один из ключей объявляется первичным, его значения не могут обновляться. Все остальные ключи отношения называются возможными ключами. Пример 3 База данных о подразделениях и сотрудниках предприятия База данных о подразделениях и сотрудниках предприятия В примере 3, связь между отношениями ОТДЕЛ и СОТРУДНИК создается путем копирования первичного ключа "Номер_отдела" из первого отношения во второе. Атрибуты, представляющие собой копии ключей других отношений, называются внешними ключами Свойства отношений Отсутствие кортежей-дубликатов Отсутствие упорядоченности кортежей Отсутствие упордоченности атрибутов. Для ссылки на значение атрибута всегда используется имя атрибута Атомарность значений атрибутов, т.е. среди значений домена не могут содержаться множества значений (отношения)