- •Добряк Павел Вадимович управление данными
- •Управление данными
- • Угту-упи, 2012
- •Введение
- •1. Основные определения
- •1.1. Элементы баз данных
- •1.2. Технологии управления данными
- •1.3. Модели данных
- •2. Реляционная модель
- •2.1. Основные понятия реляционной модели
- •2.2. Нормализация
- •2.3. Проблемы проектирования реляционных баз данных
- •Задачи для самостоятельного решения
- •3. Реляционные алгебра и исчисления
- •3.1. Реляционная алгебра
- •3.2. Реляционное исчисление на кортежах
- •3.3. Реляционное исчисление на доменах
- •4.1. Введение в sql
- •4.2. Пример реляционной базы данных
- •4.3. Запросы к одной таблице
- •4.4. Запросы к нескольким таблицам
- •4.5. Вложенные запросы
- •4.6. Вложенные подзапросы и кванторы
- •4.7. Объединение однотипных запросов
- •4.8. Рекурсивные запросы
- •Объединение однотипных запросов.
- •Запросы для самостоятельного программирования
- •5. Olap и хранилища данных
- •5.1. Архитектура хранилищ данных
- •5.2. Аналитические запросы
- •6. Триггеры, хранимые процедуры, события
- •7. Транзакции
- •7.1. Функции транзакций
- •7.2. Уровни изолированности
- •7.3. Сериализация транзакций
- •7.4. Синхронизационный захват
- •7.5. Метод временных меток
- •8. Обзор перспективных направлений баз данных
- •9. Объектные технологии в субд
- •9.1. Три манифеста баз данных
- •9.2. Объектная модель sql
- •9.3. Модель данных odmg и язык oql
- •10. Запросы к интернет-страницам
- •10.1. Теговая парадигма
- •10.2. Язык запросов xQuery
- •11. Пространственные базы данных
- •12. Лабораторные работы
- •13. Курсовая работа
- •13.1. Концептуальное проектирование
- •13.2. Семантическое проектирование
- •13.3. Физическое проектирование. Реляционная модель данных
- •13.4. Запросы
- •Объединение однотипных запросов.
- •13.5. Интеллектуализация базы данных.
- •13.6. Клиентская часть информационной системы
- •13.7. Дополнительные элементы базы данных
- •Вопросы к экзамену
- •1. Основные определения.
- •2. Реляционная модель
- •3. Реляционные алгебра и исчисления
- •10. Запросы к интернет-страницам
- •11. Пространственные базы данных
- •Литература
- •Список иллюстраций список таблиц
- •Список листингов
- •Алфавитный указатель
- •Список сокращений
13. Курсовая работа
В основе теоретической части работы лежат домашние задания, выполняемые после прослушивания лекций, в основе практической - результаты выполнения лабораторных работ. Цель курсовой работы – создать БД для какой-нибудь предметной области.
13.1. Концептуальное проектирование
Придумайте предметную область (см. Д/З ), поместить краткое словесное описание о том, какие функции должна выполнять ИС, что должна содержать БД, типы пользователей. В случае затруднений с выбором предметной области вспомните, в каких учреждениях вы бывали в роли пользователя, какое у вас есть хобби, чем занимаются ваши родственники и друзья.
13.2. Семантическое проектирование
Нарисуйте семантическую сеть, взяв за основу диаграмму «сущность-связь» (Д/З ), при этом добавив таблицы, которые появились из следующих Д/З (например, таблицы, необходимые для реализации пространственной информации). Если вам не хватает системы обозначений, введите дополнительные виды связей, описав их.
Сеть должна содержать следующее:
Связь «многие-ко-многим»
Связь наследования
Связь агрегации
n-арную связь
Связь с ролями
Связь, связывающую сущность с самой собой (или сеть должна содержать цикл)
Рядом с сущностями поставьте метки, если данная сущность используется:
Для OLAP (метка «OLAP»);
Для Data Mining (метка «DM»);
Для пространственного расширения (метка «Space»);
Для темпорального расширения (метка «Temp»);
Для распределенных БД (метка «Distrib»);
13.3. Физическое проектирование. Реляционная модель данных
В одной из реляционной СУБД создайте таблицы, соответствующие сущностям из семантической модели. Обратить внимание, что для создания связей «многие-ко-многим», n-арной связи, рекурсивных связей, связи, соединяющей связи требуются дополнительные таблицы. (см. Д/З ). Таблицы должны представлять собой отношения в 3NF. Выберете типы данных для атрибутов и первичные ключи. В отчете приведите скриншоты таблиц в режиме конструктора.
Постройте схему данных (в отчет приведите скриншот). Задайте механизмы обеспечения целостности данных (см. Д/З , приведите скриншоты) и параметры объединения данных. Для всех особых ситуаций приведите фрагменты семантической сети и соответствующие им фрагменты схемы данных.
Заполните таблицы несколькими записями (приведите скриншоты). Для удобства заполнения сделайте подстановки в нужных полях из выпадающих списков для внешних ключей (см. подстановки в конструкторе таблиц).
Если ваша СУБД – объектно-реляционная, реализуйте связи наследования и агрегации. Если нет, то приведите отображение этих связей в реляционную модель.
13.4. Запросы
Напишите запросы в режиме SQL (см. Д/З , Лаб. 3)
Запрос к одной таблице, вычисляющий агрегатную функцию, с использованием операторов where, having, group by, order by.
Запрос соединения нескольких таблиц с использованием оператора where, одна таблица должна использоваться в запросе несколько раз под псевдонимами.
Запрос с вложенным запросом, используя all, any или exists.
Запрос по правому, левому или полному соединению.
Объединение однотипных запросов.
Проверьте их работоспособность, для наглядности дополните таблицы данными.
Если вы работаете в СУБД Access, напишите различные виды запросов в режиме конструктора на языке QBE, используя сортировку, групповые операции и селекцию. Посмотрите полученные запросы в режиме SQL. Напишите следующие виды запросов (тип определяется после нажатия кнопки «создать»): простой, повторяющиеся записи, записи без подчиненных. Посмотрите полученные запросы в режиме SQL. Найдите соответствия между запросами из Д/З №4 и запросами на языке QBE. Для запросов в режиме QBE приведите скриншоты структуры, в отчет приведите результаты выполнения запросов. Запросы должны быть осмысленными и полезными пользователю.
Придумайте объектные запросы для таблиц, связанных наследованием (Д/З , Д/З ).
