
- •Содержание
- •Введение
- •1. Основные понятия
- •1.1 Терминология, базовые принципы
- •1.1.1 Понятие базы данных, субд и информационной системы
- •1.1.2 База данных и субд
- •1.1.3 Принципы построения информационных систем
- •1.2 Архитектуры информационных систем
- •1.2.1 Понятие архитектуры информационной системы
- •1.2.2 Архитектура «файл-сервер»
- •1.2.3. Архитектура «клиент-сервер»
- •1.2.4 Многозвенные архитектуры
- •1.2.5. Информационные системы на основе web-архитектуры
- •1.2.6 Информационные системы, функционирующие в терминальном режиме
- •1.3 Модели данных
- •1.3.1 Сравнительная характеристика моделей данных
- •1. Иерархическая модель данных
- •2. Сетевая модель данных
- •3. Реляционная модель данных
- •4. Постреляционная модель данных
- •5. Объектно-ориентированная модель данных
- •1.3.2 Неформальное введение в реляционную модель
- •1. Таблицы и связи
- •2. Первичные, альтернативные и внешние ключи
- •3. Null-значения
- •4. Метаданные. Схема базы данных
- •5. Правила ссылочной целостности
- •2. Реляционная модель
- •2.1 Реляционная модель. Структурная и целостная части
- •2.1.1 Структурная часть
- •2.1.2 Атрибуты и домены. Схема отношения
- •2.1.3 Кортежи. Отношение
- •2.1.4 Потенциальные ключи. Первичный ключ
- •2.1.5 Внешние ключи
- •2.1.6 Целостная часть реляционной модели
- •2.2 Манипуляционная часть реляционной модели
- •2.2.1 Реляционная алгебра
- •2.2.2 Реляционное исчисление
- •3. Проектирование базы данных
- •3.1 Семантический анализ предметной области
- •3.1.1 Трехуровневая модель ansi/sparc
- •3.1.2 Диаграммы «сущность - связь»
- •3.1.3 Case-технологии и case-системы
- •3.1.4 Методология idef1
- •3.2 Нормализация базы данных
- •3.2.1 Определение функциональной зависимости
- •3.2.2 Математические свойства фз, теоремы
- •3.2.3 Процедура нормализации. Декомпозиция отношений
- •3.2.4 Нормальные формы
- •3.3 Денормализация. Хранилища данных
- •3.3.1 Недостатки нормализованной базы данных
- •3.3.2 Oltp и olap-системы. Data Mining
- •3.3.3 Хранилища данных
- •4. Язык sql
- •4.1 Язык ddl. Основные объекты базы данных
- •4.1.1 Общий вид команд ddl
- •4.1.2 Основные объекты бд
- •4.2 Команды ddl для работы с таблицами
- •4.2.1 Создание таблицы
- •Типы даты и времени
- •4.2.2 Удаление таблиц и изменение их структуры
- •4.2.3 Пример создания базы данных
- •4.2.4 Создание таблиц на основе других таблиц
- •4.3 Команды манипулирования данными
- •4.3.1 Команда insert
- •Insert into имя_таблицы [(список_имен_столбцов)]
- •Values (список значений)
- •Insert into имя таблицы [(список столбцов)]
- •4.3.2 Команда delete
- •4.3.3 Команда update
- •4.4 Команда выборки данных (select)
- •4.4.1 Запросы на выборку по одной таблице
- •4.4.2 Соединение таблиц в запросах
- •Декартово произведение
- •Внутреннее (естественное) соединение таблиц
- •4. Самосоединения
- •4.4.3 Вложенные запросы
- •4.4.4 Комбинированные запросы
- •4.5 Представления (view)
- •4.5.1 Понятие представления
- •4.5.2 Создание и удаление представлений
- •4.5.3 Обновление представлений
- •4.5.4 Стандартные представления словаря данных Oracle
- •4.6 Хранимый код. Триггеры
- •4.6.1 Процедурные расширения языка sql
- •1. Оператор присваивания
- •2. Условный оператор
- •3. Операторы цикла
- •4.6.2 Использование команд sql в хранимом коде
- •4.6.3 Хранимые процедуры и функции
- •4.6.4 Триггеры
- •1. Триггер на вставку нового студента
- •2. Триггеры на удаление студента
- •3. Триггер на изменение оценки
- •5. Управление доступом к данным
- •5.1 Система безопасности субд
- •Разграничение доступа пользователей.
- •5.1.1 Разграничение доступа пользователей
- •Identified by пароль
- •5.1.2 Привилегии и роли
- •5.1.3 Аудит действий пользователей
- •5.2 Поддержка транзакций
- •5.2.1 Свойства транзакции
- •5.2.2 Поддержка транзакций в языке sql
- •5.2.3 Механизмы субд для поддержки транзакций
- •5.3 Настройка производительности. Индексы
- •5.3.1 Понятие индекса
- •5.3.2 Обзор индексов Oracle
- •Заключение
- •Библиографический список
Содержание
Содержание 3
Введение 6
1. Основные понятия 7
1.1 Терминология, базовые принципы 7
1.1.1 Понятие базы данных, СУБД и информационной системы 7
1.1.2 База данных и СУБД 12
1.2 Архитектуры информационных систем 18
1.2.1 Понятие архитектуры информационной системы 18
1.2.2 Архитектура «файл-сервер» 19
1.2.3. Архитектура «клиент-сервер» 21
1.2.4 Многозвенные архитектуры 23
1.2.5. Информационные системы на основе web-архитектуры 25
1.2.6 Информационные системы, функционирующие в терминальном режиме 26
1.3 Модели данных 27
1.3.1 Сравнительная характеристика моделей данных 28
1.3.2 Неформальное введение в реляционную модель 34
2. Реляционная модель 42
2.1 Реляционная модель. Структурная и целостная части 42
2.1.1 Структурная часть 42
2.1.2 Атрибуты и домены. Схема отношения 43
2.1.3 Кортежи. Отношение 44
2.1.4 Потенциальные ключи. Первичный ключ 45
2.1.5 Внешние ключи 46
2.1.6 Целостная часть реляционной модели 47
2.2 Манипуляционная часть реляционной модели 50
2.2.1 Реляционная алгебра 51
2.2.2 Реляционное исчисление 56
3. Проектирование базы данных 59
3.1 Семантический анализ предметной области 59
3.1.1 Трехуровневая модель ANSI/SPARC 60
3.1.2 Диаграммы «сущность - связь» 62
3.1.3 CASE-технологии и CASE-системы 67
3.1.4 Методология IDEF1 69
3.2 Нормализация базы данных 72
3.2.1 Определение функциональной зависимости 72
3.2.2 Математические свойства ФЗ, теоремы 74
3.2.3 Процедура нормализации. Декомпозиция отношений 76
3.3 Денормализация. Хранилища данных 86
3.3.1 Недостатки нормализованной базы данных 86
3.3.2 OLTP и OLAP-системы. Data Mining 88
3.3.3 Хранилища данных 92
4. Язык SQL 99
4.1 Язык DDL. Основные объекты базы данных 102
4.1.1 Общий вид команд DDL 102
4.1.2 Основные объекты БД 103
4.2 Команды DDL для работы с таблицами 107
4.2.1 Создание таблицы 107
4.2.2 Удаление таблиц и изменение их структуры 115
4.2.3 Пример создания базы данных 117
4.2.4 Создание таблиц на основе других таблиц 118
4.3 Команды манипулирования данными 119
4.3.1 Команда INSERT 120
4.3.2 Команда DELETE 122
4.3.3 Команда UPDATE 123
4.4 Команда выборки данных (SELECT) 124
4.4.1 Запросы на выборку по одной таблице 125
4.4.2 Соединение таблиц в запросах 139
4.4.3 Вложенные запросы 148
4.4.4 Комбинированные запросы 156
4.5 Представления (VIEW) 156
4.5.1 Понятие представления 156
4.5.2 Создание и удаление представлений 159
4.5.3 Обновление представлений 161
4.5.4 Стандартные представления словаря данных Oracle 163
4.6 Хранимый код. Триггеры 164
4.6.1 Процедурные расширения языка SQL 164
4.6.2 Использование команд SQL в хранимом коде 169
4.6.3 Хранимые процедуры и функции 173
4.6.4 Триггеры 178
5. Управление доступом к данным 185
5.1 Система безопасности СУБД 185
5.1.1 Разграничение доступа пользователей 186
5.1.2 Привилегии и роли 189
5.1.3 Аудит действий пользователей 194
5.2 Поддержка транзакций 198
5.2.1 Свойства транзакции 198
5.2.2 Поддержка транзакций в языке SQL 201
5.2.3 Механизмы СУБД для поддержки транзакций 203
5.3 Настройка производительности. Индексы 207
5.3.1 Понятие индекса 208
5.3.2 Обзор индексов Oracle 210
Заключение 220
Библиографический список 220