От автора | 7 |
|
Глава 1. Введение | 10 |
|
История развития баз данных | 10 |
Файлы и файловые системы | 11 |
Первый этап — базы данных на больших ЭВМ | 13 |
Эпоха персональных компьютеров | 15 |
Распределённые базы данных | 17 |
Перспективы развития систем управления базами данных | 18 |
Контрольные вопросы | 19 |
|
Глава 2. Основные понятия и определения | 20 |
|
Архитектура базы данных. Физическая и логическая независимость | 21 |
Процесс прохождения пользовательского запроса | 22 |
Пользователи банков данных | 23 |
Основные функции группы администратора БД | 25 |
Классификация моделей данных | 27 |
|
Глава 3. Теоретико-графовые модели данных | 31 |
|
Иерархическая модель данных | 31 |
Язык описания данных иерархической модели | 34 |
Язык манипулирования данными в иерархических базах данных | 37 |
Сетевая модель данных | 40 |
Язык описания данных в сетевой модели | 42 |
Язык манипулирования данными в сетевой модели | 44 |
|
Глава 4. Реляционная модель данных | 47 |
|
Основные определения | 47 |
Операции над отношениями. Реляционная алгебра | 51 |
Теоретико-множественные операции реляционной алгебры | 51 |
Специальные операции реляционной алгебры | 57 |
Задания для самостоятельной работы | 63 |
|
Глава 5. Язык SQL. Формирование запросов к базе данных | 66 |
|
История развития SQL | 66 |
Структура SQL | 68 |
Типы данных | 71 |
Содержание |
Оператор выбора SELECT | 74 |
Применение агрегатных функций и вложенных запросов |
в операторе выбора | 81 |
Вложенные запросы | 87 |
Внешние объединения | 89 |
Операторы манипулирования данными | 95 |
Задания для самостоятельной работы | 103 |
|
Глава 6. Проектирование реляционных БД на основе |
принципов нормализации | 104 |
|
Системный анализ предметной области | 106 |
Пример описания предметной области | 107 |
Даталогическое проектирование | 110 |
|
Глава 7. Мифологическое моделирование | 121 |
|
Модель «сущность — связь» | 122 |
Переход к реляционной модели данных | 129 |
|
Глава 8. Принципы поддержки целостности |
в реляционной модели данных | 135 |
|
Общие понятия и определения целостности | 136 |
Операторы DDL в языке SQL с заданием ограничений целостности | 140 |
Средства определения схемы базы данных | 149 |
Средства изменения описания таблиц и средства удаления таблиц | 151 |
Понятие представления операции создания представлений | 158 |
Горизонтальное представление | 159 |
Вертикальное представление | 159 |
Сгруппированные представления | 160 |
Объединённые представления | 160 |
Ограничение стандарта SQL1 на обновление представлений | 161 |
|
Глава 9. Физические модели баз данных | 162 |
|
Файловые структуры, используемые |
для хранения информации в базах данных | 163 |
Стратегия разрешения коллизий с областью переполнения | 167 |
Организация стратегии свободного замещения | 168 |
Вопросы для самостоятельной работы | 169 |
Индексные файлы | 169 |
Файлы с плотным индексом, или индексно-прямые файлы | 170 |
Файлы с неплотным индексом, или индексно-последовательные файлы | 174 |
Организация индексов в виде B-tree (В-деревьев) | 176 |
Моделирование отношений «один-ко-многим» |
на файловых структурах | 178 |
Инвертированные списки | 182 |
Модели физической организации данных при бесфайловой организации | 184 |
Структура хранения данных для MS SQL 6.5 | 188 |
Структуры хранения данных в SQL Server 7.0 | 191 |
Архитектура разделяемой памяти | 196 |
|
Глава 10. Распределённая обработка данных | 198 |
|
Модели «клиент — сервер» в технологии баз данных | 201 |
Двухуровневые модели | 204 |
Модель удалённого управления данными. Модель файлового сервера | 204 |
Модель удалённого доступа к данным | 205 |
Модель сервера баз данных | 206 |
Модель сервера приложений | 209 |
Модели серверов баз данных | 210 |
Типы параллелизма | 214 |
|
Глава 11. Модели транзакций | 216 |
|
Свойства транзакций. Способы завершения транзакций | 217 |
Журнал транзакций | 221 |
Журнализация и буферизация | 225 |
Индивидуальный откат транзакции | 226 |
Восстановление после мягкого сбоя | 227 |
Физическая согласованность базы данных | 227 |
Восстановление после жёсткого сбоя | 230 |
Параллельное выполнение транзакций | 231 |
Уровни изолированности пользователей | 241 |
Гранулированные синхронизационные захваты | 242 |
Предикатные синхронизационные захваты | 244 |
Метод временных меток | 246 |
|
Глава 12. Встроенный SQL | 248 |
|
Особенности встроенного SQL | 250 |
Операторы, связанные с многострочными запросами | 252 |
Оператор определения курсора | 253 |
Оператор открытия курсора | 255 |
Оператор чтения очередной строки курсора | 255 |
Оператор закрытия курсора | 256 |
Удаление и обновление данных с использованием курсора | 257 |
Хранимые процедуры | 259 |
Триггеры | 271 |
Динамический SQL | 273 |
|
Глава 13. Защита информации в базах данных | 276 |
|
Реализация системы защиты в MS SQL Server | 282 |
Проверка полномочий | 284 |
|
Глава 14. Обобщённая архитектура СУБД | 286 |
|
Методы синтаксической оптимизации запросов | 290 |
Методы семантической оптимизации запросов | 293 |
|
Заключение. Перспективы развития БД и СУБД | 295 |
|
Алфавитный указатель | 301 |