*Relation - отношение*  
Этот тип наиболее распространен сегодня
## Плюсы и минусы
**Плюсы:**  
- Наличие небольшого набора абстракций, на основе которых просто моделировать наиболее распространенные предметные области
- Наличие простого, но мощного математического аппарата из теории множеств и математической логики
- Есть возможность манипулирования данными без необходимости знания конкретной физической организации во внешней памяти
  
**Минусы:** 
- Критикуют за ограниченность реляционной СУБД в нетрадиционных областях: в системах автоматизации проектирования, машиностроении и т. д., где используются сложные структуры данных
  

**Тип данных** - наряду с традиционными (текстовый, числовой, дата и т. д.) есть и специальные.  
**Домен** - сравнимо с подтипами в языках программирования. Это допустимое потенциальное множество значений данного типа.  
**Атрибут** - одна из характеристик объекта (столбец, колонка, поле).  
**Схема отношения** - именованное множество пар **(имя атрибута + имя типа данных)**. **Степень (арность) схемы отношения** - мощность этого множества.  
**Схема БД** - набор именованных схем отношений.  
**Кортеж** - это множество пар **(имя атрибута + значение)**, которое содержит одно вхождение каждого имени атрибута, принадлежащего схеме отношения.  
**Отношение** - это множество кортежей, соответствующих одной схеме отношения. Различают отношение-схему и отношение-экземпляр. Набор кортежей в отношении - **тело отношения**.  
**Реляционная БД** - это набор отношений, имена которых совпадают с именами схем отношений в схеме БД.  
## Фундаментальные свойства отношений
1. **Значения атрибутов должны быть атомарны**. Т. к. домен - это потенциальное множество значений простого типа данных, то среди значений домена не могут содержаться множества значений.
2. **Отсутствие кортежей-дубликатов** (в таблице не должно быть повторных записей). Свойство следует из определения отношения как множества кортежей. А в классической теории множеств - "каждое множество состоит из различных элементов". Это свойство требует наличия у каждого отношения первичного ключа - атрибута или набора атрибутов, значения которых однозначно определяют кортеж отношения. Могут быть альтернативные ключи.
3. **Отсутствие упорядоченных кортежей**. Это следует из определения: "отношения - это множество кортежей"
4. **Отсутствие упорядоченных атрибутов**
## Общая характеристика реляционной модели данных
Реляционная модель состоит из 3 частей:
1. **Структурная часть** - в этой части говорится, что единственной структурой данных, используемой в реляционной БД, является нормализованное $n$-арное отношение
2. **Манипуляционная часть** - в этой части утверждаются 2 фундаментальных механизма реляционной БД:
	- **Реляционная алгебра** - в основе классическая теория множеств
	- **Реляционное исчисление** - в основе классический логически аппарат исчисления предикатов первого порядка.
	  
	Основная функция манипуляционной части - обеспечение меры реляционности любого конкретного языка реляционной БД.  
	Язык называется реляционным, если он обладает не меньшей выразительностью и мощностью, чем реляционная алгебра и реляционное исчисление
3. **Целостная часть** - в этой части реляционной модели фиксируются 2 базовых требования целостности, которые поддерживаются в любой реляционной СУБД:
	1. **Целостность сущностей**: любой кортеж любого отношения отличим от любого другого кортежа этого отношения. Решается этот вопрос введением первичного ключа
	2. **Целостность по ссылкам**: при соблюдении нормализованности отношений сложные сущности реального мира представляются в реляционной БД в виде нескольких кортежей нескольких отношений
## Реляционная алгебра
Основные алгебраические операции:
1) Теоретико-множественные:
	- Объединение отношений (∪)
	- Пересечение отношений (∩)
	- Разность отношений (-)
	- Произведение отношений (\*)
2) Специальные реляционные операции:
	- Ограничение отношения
	- Проекция отношения
	- Соединение отношений
	- Деление отношений
3) Также в состав алгебры включены:
	- Операция присваивания
	- Операция переименования атрибутов
## Термины из электронных таблиц, реляционных моделей и реляционных БД

| Электронные таблицы        | Реляционные модели | Реляционные БД    |
| -------------------------- | ------------------ | ----------------- |
| Таблица                    | Отношение          | Таблица БД        |
| Столбец (столбик, колонка) | Атрибут            | Поле              |
| Строка                     | Кортеж             | Запись            |
| "Шапка"                    | Схема отношения    | Структура таблицы |