
- •1. История развития баз данных
- •3. Модели данных [1]
- •1. История развития баз данных
- •1.1. Файлы и файловые системы
- •1.2. Базы данных на больших эвм
- •1.3. Эпоха персональных компьютеров
- •1.4. Распределенные базы данных
- •1.5. Особенности настоящего периода:
- •2. Проблемы обработки информации
- •Основные функции субд
- •Типовая организация современной субд
- •3. Модели данных [1]
- •3.1. Системы управления файлами
- •3.2. Иерархические базы данных
- •3.3. Сетевые базы данных
- •3.4. Реляционные базы данных
- •Недостатки реляционных систем
- •3.5. Объектно-ориентированные базы данных
- •Преимущества и недостатки оосубд [8, с.817]
- •3.6. Объектно-реляционные базы данных
- •4. Реляционная модель данных [2]
- •5. Операции над отношениями
- •5.1. Теоретико-множественные операции реляционной алгебры
- •5.1.1 Объединение отношений
- •5.1.2. Пересечение отношений
- •5.1.3. Разность отношений
- •5.1.4. Расширенное декартово произведение
- •5.2. Специальные операции реляционной алгебры
- •5.2.1. Операция фильтрации
- •5.2.2. Операция проектирования
- •5.2.3. Операция условного соединения
- •5.2.4. Операция деления
- •5.2.5.Примеры использования операций реляционной алгебры
- •Целостность [8]
- •6. Проектирование бд Жизненный цикл бд
- •Проектирование бд
- •Проектирование бд с учетом конкретной архитектуры Архитектура клиент-сервер
- •Структура сервера базы данных
- •Проектирование распределенных бд
- •11.1. Концепции распределенных баз данных
- •Этапы проектирования реляционной базы данных
- •6.1. Разработка технического задания
- •6.2. Разработка структуры бд
- •6.3. Нормализация
- •6.3.1. Первая нормальная форма
- •6.3.2. Вторая нормальная форма
- •6.3.3. Третья нормальная форма
- •6.3.4. Нормальная форма Бойса-Кодда
- •6.3.5. Четвертая и пятая нормальные формы
- •6.3.6. Денормализация
- •Проектирование реляционной базы данных на основе декомпозиции универсального отношения (плоской таблицы)
- •7.Язык запросов sql (Structured Query Language)
- •7.1. История развития
- •7.2. Как работает sql?
- •7.3. Интерактивный и встроенный sql
- •7.4. Типы данных
- •7.6. Оператор выбора select (MySql)
- •7.6.1. Предикаты предложения where
- •7.6.2. Примеры использования оператора select
- •7.6.3. Применение агрегатных функций и вложенных запросов в операторе выбора
- •8. Система управления базами данных (субд) MySql
- •8.1. Преимущества MySql перед другими субд. Недостатки
- •8.2. Инструментарий, поставляемый с MySql
- •8.3. Установка и завершение связи с сервером
- •8.4. Команды sql для MySql. Правила оформления листингов
- •8.5. Основы использования MySql
- •8.5.1. Замечания по организации работ с MySql
- •8.5.2. Программы MySql
- •8.5.2.1. Стандартные опции программ MySql
- •8.5.2.2. Конфигурационные файлы
- •8.5.2.3. Переменные среды
- •8.5.2.4. Клиенты mysql и mysqlc
- •Программирование приложений
- •Использование специализированных библиотек и встраиваемого sql
- •Odbc - открытый интерфейс к базам данных на платформе ms Windows
- •Jdbc - мобильный интерфейс к базам данных на платформе Java
- •9. Администрирование бд
- •9.1. Управление данными на предприятии
- •9.2. Основные функции dba
- •9.3. Администрирование в MySql [1])
- •9.3.1. Обеспечение доступности данных
- •9.3.2. Поддержание целостности данных
- •9.3.3. Подготовка к катастрофе
- •9.3.4. Поддержка пользователей
- •9.3.5. Разработка и внедрение стандартов
- •9.3.6. О хранении данных
- •9.3.6.1. Журнал транзакций
- •9.3.6.2. Журнальные файлы
- •9.3.7. Безопасность
- •9.3.7.1. Схемы привилегий
- •9.3.7.2. Задание привилегий
- •9.3.8. Оптимизация
- •9.3.8.1. Оптимизация запросов
- •9.3.8.2. Оптимизатор запросов
- •9.3.8.3. Выбор типа столбцов и эффективность запросов
- •9.3.8.4. Эффективная загрузка данных
- •9.3.8.5. Оптимизация для администратора
- •10. Транзакции и параллельные вычисления
- •10.1. Параллельные запросы
- •10.2. Транзакции
- •10.3. Уровни изоляции
- •10.4. Выполнение транзакций
- •10.5. Блокировки
- •10.6. Программные блокировки
- •Мониторы транзакций
- •12. Направления и тенденции развития баз данных
- •12.1. Ограничения реляционных систем
- •12.2. Особенности построения информационных хранилищ
- •Что достигается через использование технологии хранилищ данных?
- •Проблемы хранилищ данных
- •12.3. Olap-технология
- •Правила для olap-систем
- •12.3.1. Реляционные olap-системы
- •12.3.2. Многомерные olap-системы
- •12.3.3. Принципы построения многомерной базы данных
- •12.4. Oltp-технологии
- •13. Интеграция субд в среду Web
- •13.1. Публикация бд в Интернете
- •13.1.1. Общие концепции публикации бд в Интернете
- •13.1.2. Технологии публикации бд в Internet.
- •13.2. Сценарии JavaScript, jScript и vbScript
- •13.3. Элементы управления ActiveX
- •13.4. Апплеты и сервлеты Java
- •13.5. Интерфейсы
- •13.5.1. Интерфейсы cgi и WinCgi
- •13.5.2. Интерфейс isapi/nsapi
- •13.5.3. Asp, php, idc/htx-страницы
- •13.5.4. Формирование Web-страниц
- •13.5.5. Интерфейсы ole db, ado, odbc
- •13.6. Статическая публикация бд
- •13.7. Динамическая публикация бд
- •13.9. Протоколы передачи гипертекста
- •13.10. Универсальный указатель ресурсов
- •13.11. Состав и теги html-документа
- •13.15. Двухуровневые Web-приложения
- •13.16. Трехуровневые Web-приложения
- •13.17. Многоуровневые Web-приложения
- •13.18. Характеристики интерфейсов ole db, ado и odbc
- •Список использованной литературы
- •Приложения 1. Типы таблиц, поддерживаемых MySql
- •Приложение 2. Встроенные функции
- •Управляющие функции sql для MySql
- •Статистические функции
- •Математические функции
- •Строковые функции
- •Функции работы с датой и временем
- •Приложение 3. Инструкции языка sql для MySql
- •Приложение 4. Маленькая база для маленькой компании (OpenOffice_MySql) Приложение 5. MySql – начинающим администраторам Приложение 6. О метаданных
1. История развития баз данных 8
1.1. Файлы и файловые системы 9
1.2. Базы данных на больших ЭВМ 11
1.3. Эпоха персональных компьютеров 12
1.4. Распределенные базы данных 13
1.5. Особенности настоящего периода: 14
2. Проблемы обработки информации 15
Основные функции СУБД 18
Типовая организация современной СУБД 22
3. Модели данных [1] 24
3.1. Системы управления файлами 25
3.2. Иерархические базы данных 25
3.3. Сетевые базы данных 28
3.4. Реляционные базы данных 30
Недостатки реляционных систем 33
3.5. Объектно-ориентированные базы данных 34
Преимущества и недостатки ООСУБД [8, с.817] 38
3.6. Объектно-реляционные базы данных 39
5. Операции над отношениями 46
5.1. Теоретико-множественные операции реляционной алгебры 47
5.1.1 Объединение отношений 47
5.1.2. Пересечение отношений 48
5.1.3. Разность отношений 48
5.1.4. Расширенное декартово произведение 50
5.2. Специальные операции реляционной алгебры 55
5.2.1. Операция фильтрации 55
5.2.2. Операция проектирования 56
5.2.3. Операция условного соединения 57
5.2.4. Операция деления 58
5.2.5.Примеры использования операций реляционной алгебры 58
Целостность [8] 62
6. Проектирование БД 66
Жизненный цикл БД 66
Проектирование БД 67
Проектирование БД с учетом конкретной архитектуры 69
Архитектура клиент-сервер 69
Структура сервера базы данных 76
Проектирование распределенных БД 78
11.1. Концепции распределенных баз данных 78
Этапы проектирования реляционной базы данных 84
6.1. Разработка технического задания 86
6.2. Разработка структуры БД 86
6.3. Нормализация 88
6.3.1. Первая нормальная форма 89
6.3.2. Вторая нормальная форма 90
6.3.3. Третья нормальная форма 91
6.3.4. Нормальная форма Бойса-Кодда 92
6.3.5. Четвертая и пятая нормальные формы 94
6.3.6. Денормализация 94
Проектирование реляционной базы данных на основе декомпозиции универсального отношения (плоской таблицы) 95
7.Язык запросов SQL (Structured Query Language) 98
7.1. История развития 98
7.2. Как работает SQL? 100
7.3. Интерактивный и встроенный SQL 101
7.4. Типы данных 101
7.6. Оператор выбора SELECT (MySQL) 108
7.6.1. Предикаты предложения WHERE 111
7.6.2. Примеры использования оператора SELECT 113
7.6.3. Применение агрегатных функций и вложенных запросов в операторе выбора 117
8. Система управления базами данных (СУБД) MySQL 120
8.1. Преимущества MySQL перед другими СУБД. Недостатки 120
8.2. Инструментарий, поставляемый с MySQL 121
8.3. Установка и завершение связи с сервером 122
8.4. Команды SQL для MySQL. Правила оформления листингов 123
8.5. Основы использования MySQL 124
8.5.1. Замечания по организации работ с MySQL 125
8.5.2. Программы MySQL 126
Программирование приложений 132
Использование специализированных библиотек и встраиваемого SQL 133
CLI - интерфейс уровня вызовов 136
ODBC - открытый интерфейс к базам данных на платформе MS Windows 136
JDBC - мобильный интерфейс к базам данных на платформе Java 137
9. Администрирование БД 139
9.1. Управление данными на предприятии 139
9.2. Основные функции DBA 140
9.3. Администрирование в MySQL [1]) 143
9.3.1. Обеспечение доступности данных 144
9.3.2. Поддержание целостности данных 145
9.3.3. Подготовка к катастрофе 146
9.3.4. Поддержка пользователей 146
9.3.5. Разработка и внедрение стандартов 147
9.3.6. О хранении данных 147
9.3.7. Безопасность 150
9.3.7.1. Схемы привилегий 151
9.3.7.2. Задание привилегий 153
9.3.8. Оптимизация 154
10. Транзакции и параллельные вычисления 170
10.1. Параллельные запросы 171
10.2. Транзакции 172
10.3. Уровни изоляции 174
10.4. Выполнение транзакций 175
10.5. Блокировки 176
10.6. Программные блокировки 176
Мониторы транзакций 178
12. Направления и тенденции развития баз данных 180
12.1. Ограничения реляционных систем 180
12.2. Особенности построения информационных хранилищ 181
Что достигается через использование технологии хранилищ данных? 186
Проблемы хранилищ данных 186
12.3. OLAP-технология 187
Правила для OLAP-систем 190
12.3.1. Реляционные OLAP-системы 194
12.3.2. Многомерные OLAP-системы 195
12.3.3. Принципы построения многомерной базы данных 196
12.4. OLTP-технологии 198
13. Интеграция СУБД в среду Web 201
13.1. Публикация БД в Интернете 203
13.1.1. Общие концепции публикации БД в Интернете 203
13.1.2. Технологии публикации БД в Internet. 204
13.2. Сценарии JavaScript, JScript и VBScript 206
13.3. Элементы управления ActiveX 207
13.4. Апплеты и сервлеты Java 208
13.5. Интерфейсы 208
13.5.1. Интерфейсы CGI и WinCGI 208
13.5.2. Интерфейс ISAPI/NSAPI 209
13.5.3. ASP, PHP, IDC/HTX-страницы 210
13.5.4. Формирование Web-страниц 211
13.5.5. Интерфейсы OLE DB, ADO, ODBC 211
13.6. Статическая публикация БД 212
13.7. Динамическая публикация БД 213
13.8. Web-приложения 214
13.9. Протоколы передачи гипертекста 215
13.10. Универсальный указатель ресурсов 215
13.11. Состав и теги HTML-документа 216
13.12. Web-приложения и Web-серверы 217
13.13. Web-приложения с модулями расширения сервера 219
13.14. Web-приложения с модулями расширения клиентской части 220
13.15. Двухуровневые Web-приложения 221
13.16. Трехуровневые Web-приложения 223
13.17. Многоуровневые Web-приложения 224
13.18. Характеристики интерфейсов OLE DB, ADO и ODBC 227
Список использованной литературы 232
Приложения 1. Типы таблиц, поддерживаемых MySQL 233
Приложение 2. Встроенные функции 234
Управляющие функции SQL для MySQL 234
Статистические функции 235
Математические функции 235
Строковые функции 236
Функции работы с датой и временем 237
Приложение 3. Инструкции языка SQL для MySQL 239
ALTER TABLE 239
CREATE DATABASE 241
CREATE TABLE 241
CREATE INDEX 243
DELETE 244
DESCRIBE 245
DROP DATABASE 245
DROP INDEX 246
DROP TABLE 246
GRANT 246
INSERT 248
KILL 248
LOAD DATA INFILE 249
LOCK TABLES 250
REPLACE 251
REVOKE 251
SET 252
SHOW 252
UPDATE 253
USE 254
Приложение 4. Маленькая база для маленькой компании (OpenOffice_MySQL) 255
Приложение 5. MySQL – начинающим администраторам 255
Приложение 6. О метаданных 255
Введение 11
1. История развития баз данных
1.1. Файлы и файловые системы
1.2. Базы данных на больших ЭВМ
1.3. Эпоха персональных компьютеров
1.4. Распределенные базы данных
1.5. Особенности настоящего периода:
2. Проблемы обработки информации
Требования к СУБД 6
Основные функции СУБД
Типовая организация современной СУБД
Модели данных 17
3. Модели данных [1]
3.1. Системы управления файлами
3.2. Иерархические базы данных
3.3. Сетевые базы данных
3.4. Реляционные базы данных
3.5. Объектно-ориентированные базы данных
3.6. Объектно-реляционные базы данных
Реляционная модель данных 21
4. Реляционная модель данных [2]
5. Операции над отношениями
5.1. Теоретико-множественные операции реляционной алгебры
5.1.1 Объединение отношений
5.1.2. Пересечение отношений
5.1.3. Разность отношений
5.1.4. Расширенное декартово произведение
5.2. Специальные операции реляционной алгебры
5.2.1. Операция фильтрации
5.2.2. Операция проектирования
5.2.3. Операция условного соединения
5.2.4. Операция деления
5.2.5.Примеры использования операций реляционной алгебры
Обеспечение целостности 3
Целостность [8]
Ограничения целостности
Проектирование БД 13+10
6. Проектирование БД
Жизненный цикл БД
Проектирование БД
Проектирование БД с учетом конкретной архитектуры
Архитектура клиент-сервер
Транзакции 10
10. Транзакции и параллельные вычисления
10.1. Параллельные запросы
10.2. Транзакции
10.3. Уровни изоляции
10.4. Выполнение транзакций
10.5. Блокировки
10.6. Программные блокировки
Мониторы транзакций
Проектирование РБД 13
Этапы проектирования реляционной базы данных
6.1. Разработка технического задания
6.2. Разработка структуры БД
6.3. Нормализация
6.3.1. Первая нормальная форма
6.3.2. Вторая нормальная форма
6.3.3. Третья нормальная форма
6.3.4. Нормальная форма Бойса-Кодда
6.3.5. Четвертая и пятая нормальные формы
6.3.6. Денормализация
Проектирование реляционной базы данных на основе декомпозиции универсального отношения (плоской таблицы)
Язык SQL 22
7.Язык запросов SQL (Structured Query Language)
7.1. История развития
7.2. Как работает SQL?
7.3. Интерактивный и встроенный SQL
7.4. Типы данных
7.6. Оператор выбора SELECT (MySQL)
7.6.1. Предикаты предложения WHERE
7.6.2. Примеры использования оператора SELECT
7.6.3. Применение агрегатных функций и вложенных запросов в операторе выбора
СУБД MySQL 12
8. Система управления базами данных (СУБД) MySQL
8.1. Преимущества MySQL перед другими СУБД. Недостатки
8.2. Инструментарий, поставляемый с MySQL
8.3. Установка и завершение связи с сервером
8.4. Команды SQL для MySQL. Правила оформления листингов
8.5. Основы использования MySQL
8.5.1. Замечания по организации работ с MySQL
8.5.2. Программы MySQL
8.5.2.1. Стандартные опции программ MySQL
8.5.2.2. Конфигурационные файлы
8.5.2.3. Переменные среды
8.5.2.4. Клиенты mysql и mysqlc
Администрирование 17>29
9. Администрирование (на примере MySQL [1])
9.1. Обязанности администратора
9.1.1. Обеспечение доступности данных
9.1.2. Поддержание целостности данных
9.1.3. Подготовка к катастрофе
9.1.4. Поддержка пользователей
9.1.5. Разработка и внедрение стандартов
9.2. О хранении данных
Журнал транзакций
Журнальные файлы
9.3. Безопасность
9.3.1. Схемы привилегий
9.3.2. Задание привилегий
9.4. Оптимизация
9.4.1. Оптимизация запросов
9.4.2. Оптимизатор запросов
9.4.3. Выбор типа столбцов и эффективность запросов
9.4.4. Эффективная загрузка данных
9.4.5. Оптимизация для администратора
Программирование пользовательского интерфейса 7
Вопросы практического программирования
Использование специализированных библиотек и встраиваемого SQL
CLI - интерфейс уровня вызовов
ODBC - открытый интерфейс к базам данных на платформе MS Windows
JDBC - мобильный интерфейс к базам данных на платформе Java
Распределенные БД 5
11. Распределенные базы данных
11.1. Концепции распределенных баз данных
Преимущества и недостатки, свойственные распределенным СУБД
11.2. Распределенная обработка данных 3
11.3. Модели "Клиент-сервер" в технологии баз данных
Основные понятия
Модели взаимодействия клиент-сервер
Структура сервера базы данных
Направления и тенденции 22
12. Направления и тенденции развития баз данных
Ограничения реляционных систем
12.1. Особенности построения информационных хранилищ
Что достигается через использование технологии хранилищ данных?
Проблемы хранилищ данных
12.2. OLAP-технология
Правила для OLAP-систем
12.2.1. Принципы построения многомерной базы данных
12.3. OLTP-технологии
Web 4>26
13. Интеграция СУБД в среду Web
Список использованной литературы
Приложение 3. Инструкции языка SQL для MySQL
Приложение 5. MySQL – начинающим администраторам
Приложение 6. О метаданных