Курсовая работа

БД MySQL для работников приёмной комиссии высшего учебного заведения

Категория:

Курсовая работа

Дисциплина:

Система управления базами данных (СУБД)

Город:

Беларусь, Минск

Учебное заведение:

БНТУ, ФИТР

Стоимость работы:

40 руб.

Оценка: 10
Объем страниц: 73
Год сдачи: 2020
Дата публикации: 05.11.2020

* Кроме файла с работой, также есть архив с дополнительными файлами.

Описание дополнительных файлов:

MySql - папка с файлом создания таблиц, запросов и хранимых процедур
Плакат 1.pdf - структура БД
Плакат 2.pdf - сравнение индексов+производительность запросов
Плакат3.pdf - сравнение механизмов хранения данных+производительность запросов
Плакат4.pdf - SQL запросы

Фрагменты для ознакомления

КУРСОВАЯ РАБОТА

по дисциплине «Системы управления базами данных»

База данных для работников приёмной комиссии высшего учебного заведения

 

СОДЕРЖАНИЕ

 

ВВЕДЕНИЕ.. 4

1 ОПТИМИЗАЦИЯ СОЗДАННОЙ БАЗЫ ДАННЫХ ПО ТИПАМ ДАННЫХ, НОРМАЛИЗАЦИЯ ИСТОЧНИКОВ ДАННЫХ.. 5

1.1 Первая нормальная форма. 5

1.2 Вторая нормальная форма. 7

1.3 Третья нормальная форма. 8

2 ЭКСПОРТ И ИМПОРТ ИНФОРМАЦИИ НА ОСНОВЕ ФАЙЛОВ СТРУКТУРИРОВАННОГО ТИПА.. 10

2.1 Экспорт (Select … into outfile) 10

2.2 Импорт (Load data infile .. into table) 13

3 ВЛОЖЕННЫЕ ЗАПРОСЫ... 16

3.1 Простой вложенный запрос. 16

3.2 Запрос с коррелированным вложенным запросом.. 17

4 ХРАНИМЫЕ ПРОЦЕДУРЫ... 19

5 РЕЗЕРВИРОВАНИЕ И ВОССТАНОВЛЕНИЕ ДАННЫХ.. 25

5.1 Выгрузка (mysqldump) 25

5.2 Импорт (\. Back.sql) 27

6 ОПТИМИЗАЦИЯ ИСТОЧНИКОВ ДАННЫХ НА БАЗЕ СУЩЕСТВУЮЩИХ МЕХАНИЗМОВ ХРАНЕНИЯ ДАННЫХ   30

7 ОРГАНИЗАЦИЯ И ИСПОЛЬЗОВАНИЕ В ЗАПРОСАХ ВНЕШНИХ КЛЮЧЕЙ.. 39

8 ИНДЕКСАЦИЯ ДАННЫХ, СРАВНЕНИЕ ИНДЕКСОВ.. 42

9 ИСПОЛЬЗОВАНИЕ БИНАРНЫХ ОПЕРАЦИЙ В ЗАПРОСАХ. АВТОРИЗАЦИЯ И РЕГИСТРАЦИЯ.. 47

10 ИСПОЛЬЗОВАНИЕ КОДИРОВОК И СОПОСТАВЛЕНИЙ.. 51

10.1 Через character_set_*. 51

10.2 Через настройки самого сервера. 55

11 ОРГАНИЗАЦИЯ ТРАНЗАКЦИЙ.. 56

11.1 Фантомное чтение (MVCC, READ COMMITED) 56

11.2 Неповторяющееся чтение (MVCC, READ COMMITED) 57

11.3 Фантомное чтение (LOCK, READ COMMITED) 58

11.4 Неповторяющееся чтение (LOCK, READ COMMITED) 59

12 РАЗГРАНИЧЕНИЕ ПРАВ ДОСТУПА К БАЗАМ ДАННЫХ СЕРВЕРА MYSQL.. 62

13 ВРЕМЕННЫЕ ТАБЛИЦЫ И ПРЕДСТАВЛЕНИЯ (VIEW) В MYSQL.. 66

ЗАКЛЮЧЕНИЕ.. 73

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ.. 74

 

ВВЕДЕНИЕ

 

Курсовая работа посвящена оптимизации, резервированию, восстановлению таблиц созданной базы данных, созданию вложенных запросов, хранимых процедур, оптимизации источников данных на базе существующих механизмов хранения данных в MySQL, а также индексации данных, использованию бинарных операций в запросах, использованию кодировок, сопоставлений и транзакций на примере базы данных для работников приёмной комиссии высшего учебного заведения. В качестве инструмента построения базы данных использован MySQL.

В настоящее время, несмотря на повышение компьютеризации общества, в сфере образования до сих пор нет средств, позволяющих в достаточной мере автоматизировать процесс ведения документации и отчетности. О своевременности и актуальности рассматриваемой проблемы говорит тот факт, что большую часть своего времени администраторы заведений и преподаватели тратят на оформление различной документации и отчетов. Огромное количество учебных заведений и отсутствие предложений в данной сфере гарантируют высокую потребность в данном продукте.

Базы данных являются эффективным средством представления структур данных и манипулирования ими. Концепция баз данных предполагает использование интегрированных средств хранения информации, позволяющих обеспечить централизованное управление данными и обслуживание ими многих пользователей. При этом БД должна поддерживаться в среде ЭВМ единым программным обеспечением, называемым системой управления базами данных (СУБД). 

 

1 ОПТИМИЗАЦИЯ СОЗДАННОЙ БАЗЫ ДАННЫХ ПО ТИПАМ ДАННЫХ, НОРМАЛИЗАЦИЯ ИСТОЧНИКОВ ДАННЫХ 

 

Нормализация — это процесс организации данных в базе данных. Это включает создание таблиц и установку отношений между этими таблицами в соответствии с правилами, предназначенными для защиты данных и обеспечения большей гибкости базы данных за счет исключения избыточности и несогласованности зависимости. Избыточные данные отнимают место на диске и создают проблемы с обслуживанием. Если необходимо изменить данные, которые находятся в нескольких местах, их необходимо изменить точно так же, как во всех местах. 

Существует несколько правил нормализации баз данных. Каждое правило называется "обычной формой". Если выполняется первое правило, база данных называется "Первая нормальная форма". Если выполняются первые три правила, база данных считается "третьей нормальной форме". Хотя возможны и другие уровни нормализации, Третья нормальная форма считается самым высоким уровнем, необходимым для большинства приложений.

1.1 Первая нормальная форма

  • Исключение повторяющихся групп в отдельных таблицах. Каждая ячейка содержит одно значение, то есть нет никаких повторяющихся групп или массивов (рисунок 1.1.1): 

Рисунок 1.1.1 – Таблица «Расписание»

  • Создание отдельной таблицы для каждого набора связанных данных. Для таблицы «Абитуриенты» (рисунок 1.1.2) было создано поле для ввода учебного заведения, которое окончил абитуриент. Поле ссылается на таблицу «Учебные заведения» (рисунок 1.1.3) по id и названию.

Рисунок 1.1.2 – Таблица «Абитуриенты»

Рисунок 1.1.3 – Таблица «Учебные заведения»

  • Идентификация каждого набора связанных данных с помощью первичного ключа. Для таблицы «Город» было создано поле id, по которому происходит связь с другими таблицами и наборами данных (рисунок 1.1.4):

Рисунок 1.1.4 – Использование первичного ключа в наборе связанных данных

Таким образом, получается, что для приведения таблиц к первой нормальной форме нужно первым делом исключить повторяющиеся группы, которые обычно имеют вид нескольких значений, хранимых на пересечении строки и столбца. Для набора взаимосвязанных атрибутов можно создать отдельную таблицу, и затем выбрать для каждой из этих таблиц свой первичный ключ.

1.2 Вторая нормальная форма

  • Создание отдельных таблиц для наборов значений, которые применяются к нескольким записям.
  • Связывание этих таблиц с помощью внешнего ключа.

При необходимости записи не должны зависеть от первичного ключа таблицы (составного ключа). Например, рассмотрим группы абитуриентов в системе. Это поле необходимо для таблицы Абитуриенты, но также в таблице Потоки групп. Вместо того чтобы хранить группа абитуриента в отдельной записи в каждой из этих таблиц, можно сохранить ее в одном месте, в таблице Группы (рисунок 1.2.1):

Рисунок 1.2.1 – Таблица «Группы»

 

1.3 Третья нормальная форма

  • Исключение полей, которые не зависят от ключа.

Значения в записи, не являющиеся частью ключа записи, не принадлежат таблице. В общем случае, когда содержимое группы полей может быть применено к более чем одной записи в таблице, рекомендуется размещать эти поля в отдельной таблице.

Например, в таблице Абитуриенты есть льготы для поступающих. Но здесь необходим полный список льгот для групповых сообщений. Если сведения о льготах хранятся в таблице Абитуриенты, то не существует способа перечисление этих льгот без текущих кандидатов. Поэтому необходимо создать отдельную таблицу «Льготы поступающих» (рисунок 1.3.1), и связать ее с таблицей «Абитуриенты» с помощью создания ключа кода для льгот (рисунок 1.3.2):

Рисунок 1.3.1 – Таблица «Льготы поступающих»

Рисунок 1.3.2 – Создание внешних ключей

Более часто можно применить третью обычную форму только к данным, которые часто изменяются. 

57