Волк В. - Базы данных. Проектирование, программирование, управле. Практикум по проектированию, программированию и администрированию баз данных, включающий примеры и практические задания для самостоятельного выполнения
Скачать 3.21 Mb.
|
ОГЛАВЛЕНИЕ ПРЕДИСЛОВИЕ .......................................................................................................... 3 ЧАСТЬ 1. ОСНОВНЫЕ КОНЦЕПЦИИ .................................................................... 7 ГЛАВА 1. АВТОНОМНОСТЬ БАЗ ДАННЫХ ........................................................ 8 ГЛАВА 2. МОДЕЛИ ДАННЫХ .............................................................................. 12 2.1. Проектирование как процесс преобразования моделей ............................. 12 2.2. Концептуальная модель предметной области АИС ................................... 13 2.3. Дореляционные логические модели данных ............................................... 13 2.3.1. Иерархическая модель ............................................................................ 14 2.3.2. Сетевая модель CODASYL .................................................................... 15 2.4. Реляционная модель данных ......................................................................... 19 2.4.1. Компоненты реляционной модели данных .......................................... 21 2.4.2. Допустимые структуры данных ............................................................ 21 2.4.3. Ограничения целостности данных ........................................................ 22 2.4.4. Методы обработки данных .................................................................... 26 Контрольные вопросы и задания ..................................................................... 32 2.5. Объектные модели данных............................................................................ 32 ЧАСТЬ 2. ПРОЕКТИРОВАНИЕ БАЗ ДАННЫХ ................................................... 35 ГЛАВА 3. ЭСКИЗНЫЙ ПРОЕКТ. РАЗРАБОТКА КОНЦЕПТУАЛЬНОЙ ER-МОДЕЛИ ............................................................................................................. 38 3.1. Два уровня объектной декомпозиции .......................................................... 38 3.2. Сущности и атрибуты .................................................................................... 39 3.3. Связи между сущностями .............................................................................. 41 3.4. Слабые сущности ........................................................................................... 46 3.5. Пример разработки ER-модели ..................................................................... 47 Контрольные вопросы и задания ......................................................................... 52 ГЛАВА 4. ТЕХНИЧЕСКИЙ ПРОЕКТ. РАЗРАБОТКА РЕЛЯЦИОННОЙ МОДЕЛИ ДАННЫХ ................................................................................................. 54 4.1. Преобразование ER-модели в исходную схему реляционной БД ............ 54 4.2. Пример разработки исходной схемы реляционной БД .............................. 59 Контрольные вопросы и задания ..................................................................... 61 4.3. Нормализация реляционной базы данных ................................................... 61 4.3.1. Аномальное поведение слабоструктурированных БД ........................ 61 4.3.2. Процедура нормализации отношений .................................................. 63 4.3.3. Зависимости между атрибутами отношений ....................................... 65 4.3.4. Правило декомпозиции без потерь ........................................................ 67 4.3.5. Нормальные формы отношений ............................................................ 70 4.3.6. Пример нормализации реляционной базы данных .............................. 72 Контрольные вопросы и задания ..................................................................... 77 ГЛАВА 5. ПРОЕКТНЫЙ ПРАКТИКУМ ............................................................... 78 5.1. Общие методические указания ..................................................................... 78 5.2. Типовые варианты тем учебных проектов .................................................. 79 ЧАСТЬ 3. ПРОГРАММИРОВАНИЕ БАЗ ДАННЫХ ............................................ 85 ГЛАВА 6. ОСНОВЫ ЯЗЫКА SQL .......................................................................... 87 22 / 24 239 6.1. DDL — язык определения данных ............................................................... 87 6.2. DСL — язык управления доступом .............................................................. 88 6.3. DМL — язык манипулирования данными ................................................... 89 6.3.1. Простейшие SQL-запросы ...................................................................... 89 6.3.2. SQL-запросы с соединением (JOIN) таблиц ......................................... 92 6.3.3. SQL-запросы с объединением (UNION) таблиц .................................. 94 6.3.4. Модифицирующие SQL-запросы .......................................................... 95 6.3.5. Хранимые представления ....................................................................... 96 6.3.6. Подчиненные SQL-запросы ................................................................... 97 6.3.7. SQL-средства статистической обработки данных ............................. 100 6.4. Стандарты и диалекты языка SQL .............................................................. 103 6.4.1. История стандартизации языка SQL ................................................... 103 6.4.2. Диалекты языка SQL ............................................................................. 106 ГЛАВА 7. ПРАКТИКУМ ПО SQL-ПРОГРАММИРОВАНИЮ ........................ 111 7.1. Общие методические указания ................................................................... 111 7.2. Учебная база данных .................................................................................... 111 7.3. Практические задания .................................................................................. 113 Задание № 1. Простейшие запросы выборки данных ................................. 113 Задание № 2. Запросы с соединением таблиц .............................................. 113 Задание № 3. Статистическая обработка данных ........................................ 114 Задание № 4. Модифицирующие SQL-запросы ........................................... 115 Задание № 5. Запросы с объединением таблиц ............................................ 116 Задание № 6. Перекрестные запросы ............................................................ 116 ЧАСТЬ 4. УПРАВЛЕНИЕ И АДМИНИСТРИРОВАНИЕ .................................. 117 ГЛАВА 8. ОБЗОР ФУНКЦИЙ СУБД ................................................................... 118 ГЛАВА 9. ЗАДАЧИ АДМИНИСТРИРОВАНИЯ БАЗ ДАННЫХ ..................... 121 ГЛАВА 10. УПРАВЛЕНИЕ ТРАНЗАКЦИЯМИ И БЛОКИРОВКАМИ ........... 123 10.1. Понятие и базовые свойства транзакций ................................................. 123 10.2. Конфликты между транзакциями ............................................................. 124 10.3. Уровни изолированности транзакций ...................................................... 126 10.4. Управление блокировками ........................................................................ 127 10.4.1. Уровни блокирования ресурсов ......................................................... 128 10.4.2. Режимы блокирования ........................................................................ 130 10.4.3. Тупиковые блокировки — прогнозирование и разрушение ........... 133 10.5. SQL-средства управления транзакциями и блокировками .................... 136 10.5.1. Уровни изолированности и режимы блокирования ........................ 136 10.5.2. Программирование начала и завершения транзакций .................... 138 10.5.3. Примеры программирования транзакций ......................................... 139 Контрольные вопросы и задания ................................................................... 142 ГЛАВА 11. ПОДДЕРЖКА ФИЗИЧЕСКОЙ МОДЕЛИ ДАННЫХ .................... 143 11.1. Файловая модель базы данных ................................................................. 143 11.1.1. Файлы и группы файлов ..................................................................... 143 11.1.2. Файловые страницы и экстенты ........................................................ 146 11.2. Средства управления физической моделью данных .............................. 154 11.3. Алгоритм доступа к неупорядоченным данным ..................................... 155 23 / 24 240 ГЛАВА 12. УПРАВЛЕНИЕ ИНДЕКСАМИ ......................................................... 157 12.1. Линейный индекс ....................................................................................... 157 12.2. Многоуровневый иерархический индекс ................................................ 159 12.3. Кластеризованный уникальный индекс ................................................... 162 12.4. Фактор заполнения индексных станиц .................................................... 164 12.5. Рекомендации по использованию индексов ............................................ 165 ГЛАВА 13. ОПТИМИЗАЦИЯ ПРОЦЕДУРНЫХ ПЛАНОВ ИСПОЛНЕНИЯ SQL-ЗАПРОСОВ ........................................................................ 167 13.1. SQL — язык программирования декларативного типа .......................... 167 13.2. Типовая схема трансляции SQL-запроса ................................................. 168 Фаза 1. Синтаксический анализ ..................................................................... 168 Фаза 2. Лексические преобразования ............................................................ 168 Фаза 3. Логические преобразования ............................................................. 169 Фаза 4. Генерация альтернативных планов выполнения запроса .............. 171 Фаза 5. Оценка стоимости и выбор оптимального плана ........................... 171 13.3. Исполнение процедурного плана выполнения запроса ......................... 173 13.4. Средства анализа и визуализации процедурных планов ....................... 174 ГЛАВА 14. ПРАКТИКУМ ПО АДМИНИСТРИРОВАНИЮ ............................. 178 14.1. Общие методические указания ................................................................. 178 14.2. РАБОТА № 1. Анализ файловой структуры баз данных ....................... 178 Задание 1. Анализ файловой структуры базы данных «Model» ................. 179 Задание 2. Создание пользовательских баз данных .................................... 179 Задание 3. Модификация файловой структуры баз данных ....................... 179 14.3. РАБОТА № 2. Анализ алгоритмов резервирования памяти .................. 180 Методические указания .................................................................................. 180 Задание 1. Анализ системного каталога пользовательской БД .................. 181 Задание 2. Исследование алгоритма резервирования памяти в базах данных с простой файловой структурой ......................................... 183 Задание 3. Исследование алгоритма распределения памяти в базах данных со сложной файловой структурой ...................................... 185 Задание 4. Исследование структуры файловой страницы типа DATA ....... 187 14.4. РАБОТА № 3. Исследование индексных структур данных .................. 188 Методические указания .................................................................................. 189 Задание 1. Анализ структуры индексных страниц для неуникального некластеризованного индекса ........................................................................ 189 Задание 2. Анализ структуры индексных страниц для кластеризованного индекса ..................................................................... 191 Задание 3. Анализ структуры индексных страниц некластеризованного индекса при условии наличия кластеризованного индекса ........................ 192 Задание 4. Анализ структуры индексных страниц некластеризованного индекса с включенным столбцом ............................. 192 14.5. РАБОТА № 4. Анализ процедурных планов SQL-запросов .................. 193 Методические указания .................................................................................. 193 Задание 1. Анализ процедурных планов реализации однотабличных SQL-запросов ................................................................................................... 194 24 / 24 241 Задание 2. Анализ процедурных планов выполнения SQL-запросов с соединениями таблиц ................................................................................... 197 Задание 3. Анализ процедурных планов выполнения SQL-запросов с группировкой строк ...................................................................................... 198 ЧАСТЬ 5. ИНФОРМАЦИОННАЯ БЕЗОПАСНОСТЬ БАЗ ДАННЫХ ............. 199 ГЛАВА 15. КОНЦЕПЦИИ ЗАЩИТЫ ИНФОРМАЦИИ .................................... 200 15.1. Целостность информации .......................................................................... 200 15.2. Доступность и конфиденциальность информации ................................. 205 15.3. Дискреционная защита информации ....................................................... 206 15.4. Мандатная защита информации ............................................................... 208 ГЛАВА 16. УПРАВЛЕНИЕ ДОСТУПОМ К ДАННЫМ .................................... 211 16.1. Двухуровневая архитектура управления доступом ................................ 211 16.2. Управление доступом на уровне сервера баз данных ............................ 213 16.2.1. Режимы аутентификации ................................................................... 213 16.2.2. Учетные записи и разрешения уровня сервера ................................ 213 16.2.3. Фиксированные роли сервера ............................................................ 215 16.2.4. Хранение информации об учетных записях ..................................... 216 16.3. Управление доступом на уровне базы данных ....................................... 217 16.3.1. Объекты доступа: таблицы, представления, команды и схемы ..... 217 16.3.2. Субъекты доступа: пользователи и роли базы данных ................... 218 16.3.3. Хранение информации о субъектах доступа .................................... 220 16.3.4. Средства управления пользователями и ролями ............................. 221 16.3.5. Средства управления правами доступа ............................................. 222 ГЛАВА 17. ПРАКТИКУМ ПО ЗАЩИТЕ ИНФОРМАЦИИ .............................. 227 17.1. Общие методические указания ................................................................. 227 17.2. РАБОТА № 1. Подсистема защиты информации сервера БД ............... 227 Задание 1. Анализ серверных компонентов системы информационной безопасности ..................................................................... 228 Задание 2. Анализ компонентов информационной безопасности уровня базы данных ........................................................................................ 229 Контрольные вопросы .................................................................................... 229 17.3. РАБОТА № 2. Анализ средств управления доступом к данным .......... 229 Задание 1. Управление пользователями и ролями БД средствами SQL-Server Management Studio ...................................................................... 230 Задание 2. Программные средства управления разрешениями уровня базы данных ..................................................................................................... 230 17.4. РАБОТА № 3. Исследование иерархии прав доступа к данным ........... 231 ПРИЛОЖЕНИЕ А. СТАНДАРТНЫЕ ФОРМЫ БЭКУСА — НАУРА (BNF) .......................................................................................................... 233 ПРИЛОЖЕНИЕ Б. ПЕРЕЧЕНЬ ПРОФЕССИОНАЛЬНЫХ СТАНДАРТОВ .... 235 СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ .............................................. 236 1 / 2 Зав. редакцией литературы по информационным технологиям и системам связи О. Е. Гайнутдинова Ответственный редактор Т. С. Спирина Подготовка макета Э. Я. Юзеев Корректор Т. А. Кошелева Выпускающий Е. Е. Егорова Владимир Константинович ВОЛК БАЗЫ ДАННЫХ ПРОЕКТИРОВАНИЕ, ПРОГРАММИРОВАНИЕ, УПРАВЛЕНИЕ И АДМИНИСТРИРОВАНИЕ У ч е б н и к Подписано в печать 09.10.19. Бумага офсетная. Гарнитура Школьная. Формат 70 ×100 1 / 16 Печать офсетная. Усл. п. л. 19,83. Тираж 100 экз. Заказ № 65819. Отпечатано в полном соответствии с качеством предоставленного оригиналмакета в АО «Т8 Издательские Технологии». 109316, г. Москва, Волгоградский пр., д. 42, к. 5. ЛР № 065466 от 21.10.97 Гигиенический сертификат 78.01.10.953.П.1028 от 14.04.2016 г., выдан ЦГСЭН в СПб Издательство «ЛАНЬ» lan@lanbook.ru; www.lanbook.com 196105, СанктПетербург, пр. Юрия Гагарина, д. 1, лит. А Тел./факс: (812) 3362509, 4129272 Бесплатный звонок по России: 88007004071 2 / 2 |