- •Содержание
- •Глава 1 Концепция баз данных 6
- •Глава 2 Модели данных 12
- •Глава 3 Реляционная модель данных 24
- •Глава 4 Элементы языка sql 42
- •Глава 5 Проектирование баз данных 66
- •Глава 6 Функции субд и системы обработки транзакций 81
- •Глава 7 Технологии, модели и архитектура систем обработки данных 88
- •Глава 1 Концепция баз данных
- •1.1 Данные и эвм
- •1.2 Поколения субд и направления исследований
- •1.3 Терминология в субд
- •1.4 Вопросы для самоконтроля к главе 1
- •Глава 2 Модели данных
- •2.1. Классификация моделей данных
- •2.2 Основные особенности систем, основанных на инвертированных списках
- •2.2.1 Структуры данных
- •2.2.2 Манипулирование данными
- •2.2.3 Ограничения целостности
- •2.3 Иерархические модели
- •2.3.1. Иерархические структуры данных
- •2.3.2 Манипулирование данными
- •2.3.3 Ограничения целостности
- •2.4 Сетевые модели
- •2.4.1 Сетевые структуры данных
- •2.4.2 Манипулирование данными
- •2.4.3 Ограничения целостности
- •2.5 Физические модели организации баз данных
- •Файловые структуры, используемые для хранения данных в бд
- •Модели страничной организации данных в современных бд
- •Этапы доступа к бд
- •Вопросы и упражнения для самоконтроля к главе 2
- •Глава 3 Реляционная модель данных
- •3.1 Базовые понятия реляционных баз данных
- •3.1.1. Тип данных
- •3.1.2. Домен
- •3.1.3 Схема отношения, схема базы данных
- •3.1.4 Кортеж, отношение, ключи
- •3.1.5 Связи в реляционных базах данных
- •3.2 Фундаментальные свойства отношений
- •3.2.1 Отсутствие кортежей-дубликатов
- •3.2.2 Отсутствие упорядоченности кортежей
- •3.2.3 Отсутствие упорядоченности атрибутов
- •3.2.4 Атомарность значений атрибутов
- •3.3. Характеристика реляционной модели данных
- •3.4 Трехзначная логика (3vl)
- •3.5 Реляционная алгебра
- •Эквисоединение. Наиболее важным частным случаем -соединения является случай, когда есть просто равенство. Синтаксис эквисоединения:
- •3.6 Особенности операций реляционной алгебры
- •Реляционное исчисление
- •Вопросы и упражнения для самоконтроля к главе 3
- •Глава 4 Элементы языка sql
- •4.1 История языка sql
- •4.2 Структура языка sql
- •Ddl (Data Definition Language) - операторы определения объектов базы данных:
- •Dml (Data Manipulation Language) - операторы манипулирования данными:
- •Dcl (Data Control Language) - операторы контроля данных, защиты и управления данными:
- •4.3 Создание запроса с помощью оператора select
- •4.3.1 Создание простых запросов
- •4.3.2. Агрегирование данных в запросах
- •4.3.3 Формирование запросов на основе соединения таблиц
- •4.3.4 Формирование структур вложенных запросов
- •Простые подзапросы
- •4.3.4.2 Соотнесенные (коррелированные) подзапросы
- •Запросы с использованием кванторов
- •4.3.5 Объединение нескольких запросов в один
- •4.3.6 Синтаксис оператора select
- •4.4 Операторы манипулирования данных
- •4.4.1 Оператор удаления данных delete
- •4.4.2 Оператор вставки данных insert
- •4.4.3 Оператор обновления данных update
- •Операторы определения объектов базы данных
- •4.5.1 Операторы определения таблицы
- •4.5.2 Оператор определения представлений create view
- •Операторы контроля данных, защиты и управления данными
- •4.6.1 Операторы управления привилегиями
- •4.6.2 Операторы управления транзакциями
- •4.6.3 Проблемы параллельной работы транзакций
- •Вопросы и упражнения для самоконтроля к главе 4
- •Глава 5 Проектирование баз данных
- •5.1 Проектирование реляционных бд с использованием принципов нормализации
- •Проектирование реляционных бд с использованием семантических моделей
- •5.2.1 Применение семантических моделей при проектировании
- •5.2.2. Основные понятия модели Entity-Relationship
- •5.2.3 Пример разработки простой er-модели
- •Практические рекомендации по проектированию бд
- •Вопросы и упражнения для самоконтроля к главе 5
- •Глава 6 Функции субд и системы обработки транзакций
- •6.1 Основные функции субд
- •1.Непосредственное управление данными во внешней памяти
- •2. Управление буферами оперативной памяти
- •3. Управление транзакциями
- •4. Журнализация
- •5. Поддержка языков бд
- •Системы обработки транзакций
- •6.2.1 Oltp-системы
- •6.2.2 Olap -системы
- •6.2.3 Мониторы транзакций
- •Архитектура субд
- •6.4 Пользователи бд
- •6.4 Вопросы и упражнения для самоконтроля по главе 6
- •Глава 7 Технологии, модели и архитектура систем обработки данных
- •7.1 Технологии и модели архитектуры «клиент-сервер»
- •7.2 Распределенная обработка данных
- •Аспекты сетевого взаимодействия
- •Технология распределенной бд (технология star)
- •Технология тиражирования данных
- •7.3 Концепция активного сервера в модели dbs
- •7.4 Вопросы и упражнения для самоконтроля к главе 7
- •Литература
Федеральное агентство по образованию
Кемеровский институт (филиал)
Государственного образовательного учреждения высшего профессионального образования
«Российский государственный
торгово-экономический университет»
Т.Ф. Лебедева
БАЗЫ ДАННЫХ
Учебное пособие
Кемерово
2010 г.
Содержание
Содержание 4
Глава 1 Концепция баз данных 6
1.1 Данные и ЭВМ 6
1.2 Поколения СУБД и направления исследований 8
1.3 Терминология в СУБД 10
1.4 Вопросы для самоконтроля к главе 1 12
Глава 2 Модели данных 12
2.1. Классификация моделей данных 12
2.2 Основные особенности систем, основанных на инвертированных списках 14
2.2.1 Структуры данных 14
2.2.2 Манипулирование данными 14
2.2.3 Ограничения целостности 15
2.3 Иерархические модели 15
2.3.1. Иерархические структуры данных 15
2.4 Сетевые модели 16
2.4.1 Сетевые структуры данных 16
2.4.2 Манипулирование данными 17
2.4.3 Ограничения целостности 17
2.5 Физические модели организации баз данных 17
2.5.1 Файловые структуры, используемые для хранения данных в БД 19
2.5.2 Модели страничной организации данных в современных БД 21
2.5.3 Этапы доступа к БД 22
2.6 Вопросы и упражнения для самоконтроля к главе 2 24
Глава 3 Реляционная модель данных 24
3.1 Базовые понятия реляционных баз данных 24
3.1.1. Тип данных 25
3.1.2. Домен 25
3.1.3 Схема отношения, схема базы данных 25
3.1.4 Кортеж, отношение, ключи 25
3.1.5 Связи в реляционных базах данных 27
3.2 Фундаментальные свойства отношений 27
3.2.1 Отсутствие кортежей-дубликатов 27
3.2.2 Отсутствие упорядоченности кортежей 27
3.2.3 Отсутствие упорядоченности атрибутов 28
3.2.4 Атомарность значений атрибутов 28
3.3. Характеристика реляционной модели данных 28
3.4 Трехзначная логика (3VL) 29
3.5 Реляционная алгебра 30
3.6 Особенности операций реляционной алгебры 40
3.7 Реляционное исчисление 41
III.7 Вопросы и упражнения для самоконтроля к главе 3 42
Глава 4 Элементы языка sql 42
4.1 История языка SQL 42
4.2 Структура языка SQL 44
4.3 Создание запроса с помощью оператора SELECT 46
4.3.1 Создание простых запросов 46
4.3.2. Агрегирование данных в запросах 48
4.3.3 Формирование запросов на основе соединения таблиц 50
4.3.4 Формирование структур вложенных запросов 52
4.3.5 Объединение нескольких запросов в один 54
4.3.6 Синтаксис оператора SELECT 55
4.4 Операторы манипулирования данных 56
4.4.1 Оператор удаления данных DELETE 56
4.4.2 Оператор вставки данных INSERT 56
4.4.3 Оператор обновления данных UPDATE 57
4.5 Операторы определения объектов базы данных 57
4.5.1 Операторы определения таблицы 57
4.5.2 Оператор определения представлений CREATE VIEW 59
4.6 Операторы контроля данных, защиты и управления данными 60
4.6.1 Операторы управления привилегиями 60
4.6.2 Операторы управления транзакциями 62
4.6.3 Проблемы параллельной работы транзакций 64
4.7 Вопросы и упражнения для самоконтроля к главе 4 65
Глава 5 Проектирование баз данных 66
5.1 Проектирование реляционных БД с использованием принципов нормализации 67
5.2 Проектирование реляционных БД с использованием семантических моделей 72
5.2.1 Применение семантических моделей при проектировании 72
5.2.2. Основные понятия модели Entity-Relationship 74
5.2.3 Пример разработки простой ER-модели 76
5.3 Практические рекомендации по проектированию БД 79
5.4 Вопросы и упражнения для самоконтроля к главе 5 80
Глава 6 Функции субд и системы обработки транзакций 81
6.1 Основные функции СУБД 81
6.2 Системы обработки транзакций 84
6.2.1 OLTP-системы 84
6.2.2 OLAP -системы 84
6.2.3 Мониторы транзакций 85
6.3 Архитектура СУБД 87
6.4 Вопросы и упражнения для самоконтроля по главе 6 88