- •Введение
- •1. Основные понятия и определения
- •1.1. Информационные системы и банк данных
- •1.2. Назначение и основные компоненты банка данных
- •1.3. Архитектура базы данных. Физическая и логическая независимость данных
- •1.4. Системы управления базами данных
- •1.5. Оперативные и аналитические системы
- •1.6. Требования, предъявляемые к базам данных
- •2. Модели данных
- •2.1. Иерархическая модель данных
- •2.2. Сетевая модель
- •2.3. Реляционная модель
- •2.4. Постреляционная модель
- •2.5. Многомерная модель
- •2.6. Объектно-ориентированная модель
- •2.7. Объектно-реляционная модель данных
- •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.3. Реляционное исчисление
- •3.4. Язык запросов по образцу qbe
- •3.5. Структурированный язык запросов sql
- •3.5.1. История развития sql
- •3.5.2. Общая характеристика языка
- •3.5.3. Структура sql
- •3.5.4. Оператор выбора select
- •3.5.5. Применение агрегатных функций и группировки
- •3.5.6. Раздел order by и ключевое слово top
- •3.5.7. Вложенные запросы
- •3.5.8. Внутренние и внешние объединения
- •3.5.9. Перекрестные запросы
- •3.5.10. Операторы манипулирования данными
- •3.5.11. Запросы на создание таблиц
- •3.5.12. Использование языка определения данных
- •Строка данных
- •Числовые типы данных.
- •3. Дата и время.
- •4. Проектирование баз данных
- •4.1. Этапы проектирования бд
- •4.2. Проблемы проектирования реляционных баз данных
- •Сотрудники_Телефоны_Комнаты
- •Сотрудники_Телефоны_Комнаты
- •4.3. Нормализация отношений
- •4.4. Метод сущность-связь
- •Средства автоматизации проектирования
- •4.5.1. Основные определения
- •4.5.2. Модели жизненного цикла
- •4.5.3. Модели структурного проектирования
- •4.5.4. Объектно-ориентированные модели
- •4.5.5. Классификация case-средств
- •5. Физические модели баз данных
- •5.1. Файловые структуры, используемые в базах данных
- •5.2. Хешированные файлы
- •5.2.1. Стратегия разрешения коллизий с областью переполнения
- •5.2.2. Организация стратегии свободного замещения
- •5.3. Индексные файлы
- •5.3.1. Файлы с плотным индексом, или индексно-прямые файлы
- •5.3.2. Файлы с неплотным индексом, или индексно-последовательные файлы
- •5.3.3. Организация индексов в виде b-tree (в-деревьев)
- •5.4. Моделирование отношений «один-ко-многим» на файловых структурах
- •5.5. Инвертированные списки
- •5.6. Модели бесфайловой организации данных
- •6. Защита информации в базах данных
- •6.1. Общие подходы к обеспечению безопасности данных
- •6.2. Назначение и проверка полномочий, проверка подлинности
- •6.3. Средства защиты базы данных
- •7. Распределенные базы данных
- •7.1. Организация базы данных в локальной сети
- •7.2. Модели архитектуры клиент-сервер
- •Передача данных из бд
- •Удаленный доступ к данным
- •Распределенная бд
- •7.3. Управление распределенными данными
- •Заключение
- •Библиографический список
- •Оглавление
- •Учебное издание
- •394026 Воронеж, Московский просп., 14
4. Проектирование баз данных
4.1. Этапы проектирования бд
Проектирование базы данных является одним из важнейших этапов жизненного цикла БД, который включает:
- проектирование БД,
- проектирование приложений,
- реализацию БД,
- разработку специальных средств администрирования БД,
- эксплуатацию БД.
Процесс проектирования БД представляет собой последовательность переходов от неформального словесного описания информационной структуры предметной области к формализованному описанию объектов предметной области в терминах некоторой модели.
Можно выделить следующие этапы проектирования базы данных.
- системный анализ предметной области;
- инфологическое проектирование;
- выбор СУБД;
- даталогическое проектирование (логическое проектирование).
В рамках системного анализа предметной области необходимо провести подробное словесное описание предметной области и реальных связей, которые существуют между описываемыми объектами.
В общем случае существуют два подхода к выбору состава и структуры предметной области.
Функциональный подход. Применяется тогда, когда заранее известны задачи, для решения которых создается база данных. В этом случае можно четко выделить минимально необходимый набор объектов предметной области, которые должны быть описаны.
Предметный подход. Информационные потребности будущих пользователей БД жестко не фиксированы. Невозможно точно выделить минимальный набор объектов предметной области, которые необходимо описать. В этом случае в описание предметной области включаются такие объекты и взаимосвязи, которые наиболее характерны и наиболее существенны для нее. БД, конструируемая при этом, называется предметной, то есть она может быть использована при решении множества разнообразных, заранее не определенных задач.
Чаще всего на практике рекомендуется использовать некоторый компромиссный вариант, который, с одной стороны, ориентирован на конкретные задачи или функциональные потребности пользователей, а с другой стороны, учитывает возможность наращивания новых приложений.
Системный анализ должен заканчиваться техническим заданием на проектирование базы данных и приложения для работы с ней:
- подробным описанием объектов предметной области, информацию о которых требуется хранить в БД;
- формулировкой конкретных задач, которые будут решаться с использованием данной БД, с кратким описанием алгоритмов их решения;
- описанием выходных документов, которые должны генерироваться в системе,
- описанием входных документов, которые служат основанием для заполнения данными БД.
Инфологическое проектирование создает инфологическую модель предметной области, не привязанную к конкретной СУБД.
Инфологическое проектирование, прежде всего, связано с попыткой представления семантики предметной области в модели БД. Информационная модель предметной области представляет собой схему базы данных, содержащую описание структуры таблиц (имена, типы, размеры полей, ключевые поля) и связей между ними.
Логическое проектирование приводит к разработке схемы БД с учетом особенностей выбранной СУБД. Схема реляционной базы данных есть совокупность схем отношений, которые адекватно моделируют объекты предметной области, их основные свойства и связи между объектами.
Логическое проектирование заключается:
- в определении числа и структуры таблиц, описываемых средствами выбранной СУБД;
- в описании запросов к базе данных;
- в описании выходных документов;
- в разработке алгоритмов обработки информации;
- в проектировании форм для ввода и редактирования данных в таблицах базы данных.
Часто этапы инфологическое проектирование, выбор СУБД и логическое проектирование объединяют и называют логическим проектированием.
Решение проблем проектирования на физическом уровне во многом зависит от используемой СУБД, зачастую автоматизировано и скрыто от пользователя. В ряде случаев пользователю предоставляется возможность настройки отдельных параметров системы.