- •Общие сведения Сведения об эумк
- •Методические рекомендации по изучению дисциплины
- •Рабочая учебная программа
- •Учреждение образования
- •«Белорусский государственный университет
- •Информатики и радиоэлектроники»
- •Пояснительная записка
- •Содержание дисциплины
- •1. Название тем лекционных занятий, их содержание, объем в часах.
- •2 Перечень тем ипр их наименование и объем в часах
- •3 Перечень тем контрольных работ их наименование и объем в часах
- •4. Курсовая работа, ее характеристика
- •Перечень тем курсовых работ
- •5. Литература
- •5.1 Основная
- •5.2 Дополнительная
- •6. Перечень компьютерных программ, наглядных и других пособий, методических указаний и материалов и технических средств обучения
- •7. Учебно-методическая карта дисциплины
- •1.1.2. Классификация субд
- •1.2. Субд начального уровня – MySql
- •1.2.1. Введение в MySql
- •1.2.2. Подготовка к работе с MySql
- •1.2.3. Создание базы данных, основы работы с таблицами MySql
- •1.2.4. Типы данных столбцов MySql
- •1.2.5. Работа с таблицами MySql
- •1.2.6. Логические операторы MySql
- •1.2.7. Команды обработки данных MySql
- •1.2.8. Математические функции MySql
- •1.2.9. Работа с датой и временем в MySql
- •1.2.10. Работа со строками в MySql
- •1.2.11. Дополнительные функции MySql
- •1.3. Субд корпоративного уровня – ms sql Server
- •1.3.1. Общая теория запросов sql
- •1.3.2. Имена в sql
- •1.3.3. Типы данных
- •1.3.4. Константы
- •1.3.5. Выражения
- •1.3.6. Встроенные функции
- •1.3.7. Отсутствующие значения (значения null)
- •1.3.8. Простые запросы sql на выборку данных
- •1.3.9. Предложение select
- •1.3.10. Предложение from
- •1.3.11. Вычисляемые столбцы
- •1.3.12. Выборка всех столбцов (инструкция select *)
- •1.3.13. Повторяющиеся строки (предикат distinct)
- •1.3.14. Отбор строк (предложение where)
- •1.3.15. Условия отбора
- •1.3.16. Составные условия отбора (операторы and, or и not)
- •1.3.17. Сортировка результатов запроса (предложение order by)
- •1.3.18. Правила выполнения однотабличных запросов
- •1.3.19. Сложные запросы
- •1.3.20. Запросы на объединение и повторяющиеся строки
- •1.3.21. Запросы на объединение и сортировка
- •1.3.22. Вложенные запросы на объединение
- •1.3.23. Многотабличные запросы на выборку
- •1.3.24. Запросы с использованием отношения предок/потомок
- •1.3.25. Запросы на выборку к трём и более таблицам
- •1.3.26. Объединение таблиц по неравенству
- •1.3.27. Особенности многотабличных запросов
- •1.3.28. Самообъединения
- •1.3.29. Производительность при обработке многотабличных запросов
- •1.3.30. Умножение таблиц
- •1.3.31. Правила выполнения многотабличных запросов на выборку
- •1.3.32. Внешнее объединение таблиц
- •1.3.33. Левое и правое внешние объединения
- •1.4. Способы взаимодействия программных средств в субд
- •1.4.1. Доступ к базе данных на стороне сервера
- •1.4.2. Доступ к базе данных на стороне клиента
- •1.5. Современные тенденции развития субд
- •1.5.1. Введение
- •1.5.2. Как предсказать тенденции развития субд
- •1.5.3. Эволюционный подход
- •1.5.4. Тенденции развития
- •1. Виртуализация ресурсов и grid-технологии
- •2. Встраивание Information Life Cycle Management (ilm) в субд
- •3. Самоуправление, самодиагностика, самолечение
- •4. Real Application Testing – механизмы промышленного тестирования версий и изменений
- •5. Совершенствование архитектур максимальной доступности
- •6. Включение измерения времени в субд
- •7. Поддержка новых типов данных (xml, rfid, Semantic Web, геном, медицина, быстрые lob и т.Д.)
- •8. Умные механизмы сжатия и дедублирования
- •9. Совершенствование методов защиты данных
- •11. Облачные вычисления (Cloud computing)
- •12. Машины баз данных
- •2.1.2. Администрирование ms sql Server
- •2.2. Повышение надёжности баз данных
- •2.2.1. Обеспечение сохранности данных в MySql
- •2.2.2. Обеспечеие сохранности данных в ms sql Server
- •2.3. Повышение производительности баз данных
- •2.3.1. Повышение производительности MySql
- •2.3.2. Повышение производительности ms sql Server
- •2.4. Повышение безопасности бд
- •2.4.1. Безопасность MySql
- •2.4.2. Безопасность ms sql Server
- •2.5. Модернизация бд в процессе эксплуатации
- •2.5.1. Расширение возможностей MySql
- •2.5.2. Распределённые базы данных
- •Указания по выбору варианта
- •Курсовое проектирование Методические указания по выполнению
- •Цель проектирования
- •Теоретические положения Основные понятия баз данных
- •Этапы проектирования базы данных
- •Модели данных
- •Нормальные формы отношений
- •Задания к выполнению курсового проекта
- •Указания по выбору варианта
- •Правила оформления выполненных заданий
- •Пример проектирования базы данных
Правила оформления выполненных заданий
Пояснительная записка к курсовому проекту должна включать в себя: титульный лист; содержание; задание из таблицы 1 и 2 и перечень объектов, выбранных в соответствии с запросами.
При выполнении курсового проекта последовательность действий должна быть следующей:
1. Изучить основные теоретические разделы проектирования БД из методических указаний и рекомендованной литературы.
2. Решить задачи а) -г) согласно п.п. 2.1.
3. Сформулировать выводы по результатам выполнения проекта.
4. Привести список использованной литературы.
Пояснительная записка оформляется на стандартных листах белой бумаги. Объем записки 20-25 страниц рукописного или машинописного текста. Программа обработки запросов оформляется в виде приложения с результатами.
Пример проектирования базы данных
Запросы:
1 Кто из студентов занимается и спортом, и самодеятельностью?
2 В каких комнатах данного общежития проживают студенты конкретной группы?
3 Кто из студентов, проживающих в данной комнате общежития, не имеет комсомольских поручений?
Исходя из запросов выбираются следующие объекты:
ВЛКСМ (N группы, Ф.И.О., Комсомольская работа, Оценка работы)
Группа (N группы, Факультет, Количество студентов, Количество семейных пар, Ф.И.О. старосты)
Общежитие (N общежития, Ф.И.О. коменданта, N комнаты, Ф.И.О.
жильца, N группы, Ф.И.О. старосты комнаты)
Самодеятельность (N группы, Ф.И.О. студента, Жанр, Стаж занятий)
Спорт (N группы, Ф.И.О. студента, Вид спорта, Спортивная квали
фикация)
Студент (N зачетной книжки, N группы, Ф.И.О. студента, Адрес студента, Семейное положение)
Взаимосвязи между элементами данных.
Взаимосвязи между атрибутами каждого объекта:
ВЛКСМ (N группы, Ф.И.О., Комсомольская работа, Оценка работы)
Ф.И.О. <<--> N группы (М:1)
Ф.И.О. <<-->> Комсомольская работа (М:М)
Комсомольская работа <--> Оценка работы (1:1)
Группа (N группы, Факультет, Количество студентов, Количество семей
ных пар, Ф.И.О. старосты)
N группы <<--> Факультет (М:1)
N группы <--> Количество студентов (1:1)
N группы <--> Количество семейных пар (1:1)
N группы <--> Ф.И.О. старосты (1:1)
Общежитие (N общежития, Ф.И.О. коменданта, N комнаты, Ф.И.О.
жильца, N группы, Ф.И.О. старосты комнаты)
N общежития <--> Ф.И.О. коменданта (1:1)
Ф.И.О. жильца <<--> N комнаты (М:1)
Ф.И.О. жильца <<--> N группы (М:1)
N комнаты <--> Ф.И.О. старосты комнаты (1:1)
Самодеятельность (N группы, Ф.И.О. студента, Жанр, Стаж занятий)
Ф.И.О. студента <<--> N группы (М:1)
Ф.И.О. студента <<-->> Жанр (М:М)
Ф.И.О. студента <-->> Стаж занятий (1:М)
Спорт (N группы, Ф.И.О. студента, Вид спорта, Спортивная квалификация)
Ф.И.О. студента <<--> N группы (М:1)
Ф.И.О. студента <<-->> Вид спорта (М:М)
Ф.И.О. студента <-->> Спортивная квалификация (1:М)
Студент (N зачетной книжки, N группы, Ф.И.О. студента, Адрес студента, Семейное положение)
Ф.И.О. студента <--> N зачетной книжки (1:1)
Ф.И.О. студента <<--> N группы (М:1)
Ф.И.О. студента <<--> Адрес студента (М:1)
Ф.И.О. студента <--> Семейное положение (1:1)
Нормализация отношений
Группа (N группы, Факультет, Количество студентов, Количество семейных пар, Ф.И.О. старосты)
Ограничения:
-На факультете – несколько групп.
-В разных группах количества студентов и количества семейных пар могут совпадать.
Функциональные зависимости:
F={N группы --> Факультет, Количество студентов, Количество семейных пар, Ф.И.О. старосты}
Ключ: N группы.
Вид нормальной формы: данное отношение находится в III НФ, так как оно находится в I НФ (все значения атрибутов атомарные), отсутствует неполная зависимость от ключа непервичных атрибутов и отсутствует транзитивная зависимость последних от ключа.
Общежитие (N общежития, Ф.И.О. коменданта, N комнаты, Ф.И.О. жильца, N группы, Ф.И.О. старосты комнаты)
Ограничения:
- В каждой комнате живут несколько жильцов.
-В разных общежитиях могут быть комнаты с одинаковыми номерами.
Функциональные зависимости:
F={N общежития <--> Ф.И.О. коменданта; N общежития, N комнаты --> Ф.И.О. старосты комнаты; Ф.И.О. жильца --> N группы}
Ключ: N общежития & N комнаты & Ф.И.О. жильца.
Вид нормальной формы: данное отношение находится в I НФ, так как все значения атрибутов атомарные.
Приведение к III НФ: декомпозиция.
R1 (N общежития, Ф.И.О. коменданта)
R2 (N общежития, N комнаты, Ф.И.О. старосты комнаты)
R3 (Ф.И.О. жильца, N группы)
R4 (N общежития, N комнаты, Ф.И.О. жильца)
ВЛКСМ (N группы, Ф.И.О., Комсомольская работа, Оценка работы)
Ограничения:
-Один студент может заниматься разной комсомольской работой.
Функциональные зависимости:
F={Ф.И.О. --> N группы; Ф.И.О., Комсомольская работа --> Оценка работы}
Ключ: Ф.И.О. & Комсомольская работа.
Вид нормальной формы: данное отношение находится в I НФ, так как все значения атрибутов атомарные.
Приведение к III НФ: декомпозиция.
R1 (N группы, Ф.И.О.)
R2 (Ф.И.О., Комсомольская работа, оценка работы)
Самодеятельность (N группы, Ф.И.О. студента, Жанр, Стаж занятий)
Ограничения:
Один студент может заниматься самодеятельностью в разных жанрах, при этом каждому из жанров соответствует свой стаж.
Функциональные зависимости:
F={Ф.И.О. студента --> N группы; Ф.И.О. студента, Жанр --> Стаж занятий}
Ключ: Ф.И.О. студента & Жанр.
Вид нормальной формы: данное отношение находится в I НФ, так как все значения атрибутов атомарные.
Приведение к III НФ: декомпозиция.
R1 (N группы, Ф.И.О. студента)
R2 (Ф.И.О. студента, Жанр, Стаж занятий)
Спорт (N группы, Ф.И.О. студента, Вид спорта, Спортивная квалификация)
Ограничения:
-Один студент может заниматься разными видами спорта, при этом каждому из видов спорта соответствует своя спортивная квалификация.
Функциональные зависимости:
F={Ф.И.О. студента --> N группы; Ф.И.О. студента, Вид спорта --> Спортивная квалификация}
Ключ: Ф.И.О. студента & Вид спорта.
Вид нормальной формы: данное отношение находится в I НФ, так как все значения атрибутов атомарные.
Приведение к III НФ: декомпозиция.
R1 (N группы, Ф.И.О. студента)
R2 (Ф.И.О. студента, Вид спорта --> Спортивная квалификация)
Студент (N зачетной книжки, N группы, Ф.И.О. студента, Адрес студента, Семейное положение)
Ограничения:
-Несколько студентов могут проживать по одному адресу.
Функциональные зависимости:
F={N группы --> N зачетной книжки, N группы, Адрес студента, Семейное положение; N зачетной книжки --> Ф.И.О. студента}
Ключ: Ф.И.О. студента.
Вид нормальной формы: данное отношение находится в III НФ, так как оно находится в I НФ (все значения атрибутов атомарные), отсутствует неполная зависимость от ключа непервичных атрибутов и отсутствует транзитивная зависимость последних от ключа.
Реализация запросов в терминах реляционной алгебры
В общем виде:
1 Кто из студентов занимается и спортом, и самодеятельностью?
(Самодеятельность[Ф.И.О. студента = Ф.И.О. студента]Спорт) [Ф.И.О. студента, Жанр, Вид спорта]
2 Вкаких комнатах данного общежития проживают студенты конкретнойгруппы?
Общежитие(N общ.=Nob & N группы=Ngr)[Ф.И.О. студента, N комнаты, Nгруппы]
3 Кто из студентов, проживающих в данной комнате общежития, не имеет комсомольских поручений?
(Общежитие(N общ.=Nob & N комнаты=Nkom)[Ф.И.О. жильца]) \(ВЛКСМ[Ф.И.О.])