
- •Введение
- •Анализ предметной области
- •Анализ сущностей и связей между ними
- •Составление требуемых запросов к базе данных
- •Анализ разрешений и запретов на операции с табличными данными для различных пользователей
- •Проектирование пользовательского интерфейса
- •Обработка данных
- •Заключение
- •Список литературы
- •Приложение 1 Листинг создания таблиц
- •Приложение 2 Листинг добавления данных в таблицы
МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное автономное образовательное учреждение высшего образования
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»
КАФЕДРА ПРИКЛАДНОЙ ИНФОРМАТИКИ
КУРСОВАЯ РАБОТА (ПРОЕКТ) ЗАЩИЩЕНА С ОЦЕНКОЙ
РУКОВОДИТЕЛЬ
Канд.тех.наук |
|
|
|
Е.Л. Турнецкая |
должность, уч. степень, звание |
|
подпись, дата |
|
инициалы, фамилия |
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА К КУРСОВОЙ РАБОТЕ
|
РАЗРАБОТКА ИНФОРМАЦИОННОЙ СИСТЕМЫ ДЛЯ БИБЛИОТЕКИ
|
по дисциплине: БАЗЫ ДАННЫХ |
|
|
РАБОТУ ВЫПОЛНИЛ
СТУДЕНТ ГР. № |
4016 |
|
|
|
М.О. Жовтяк |
|
|
|
подпись, дата |
|
инициалы, фамилия |
Санкт-Петербург 2023
СОДЕРЖАНИЕ
Введение 2
1. Анализ предметной области 3
2. Анализ сущностей и связей между ними 9
3. Составление требуемых запросов к базе данных 16
4. Анализ разрешений и запретов на операции с табличными данными для различных пользователей 21
5. Проектирование пользовательского интерфейса 22
6. Обработка данных 32
Заключение 36
Список литературы 37
Приложение 1 38
Приложение 2 41
Введение
Для организации быстрой и надежной работы клиентов или работников с информацией, компании или фирме необходимо иметь полноценную и комплексную информационную систему [1]. Информационная система имеет несколько этапов создания: анализ, проектирование и конечного составления. Данное задание позволит приобрести практические навыки в программе MySQL, которые нужны для составления информационной системы.
MySQL является реляционной системой управления базами данных [2]. Она обладает мощными возможностями для работы с большим массивом данных, представленным в таблицах.
Также необходимо получить практические навыки в визуализации данных, так как необходимо уметь представлять информацию в грамотном, понятном и презентабельном виде. Визуализация данных будет производиться в средах Excel и Python.
Для проектирования и разработки был предложен вариант «Библиотека».
Цель: разработка полноценной информационной системы средствами MySQL-сервер.
Задачи:
анализ предметной области;
анализ сущностей и связей между ними на базе ER-диаграмм;
нормализация отношений в схеме данных;
составление требуемых запросов к базе данных на языке SQL;
анализ разрешений и запретов на операции с табличными данными для различных пользователей;
проектирование пользовательского интерфейса.
Анализ предметной области
В Хоббитонии есть библиотека. Библиотека зарабатывает деньги, выдавая напрокат некоторые книги, имеющиеся в небольшом количестве экземпляров.
Необходимо реализовать отслеживание финансовых показателей работы библиотеки. У каждой книги, выдаваемой в прокат, есть название, автор, жанр. В зависимости от ценности книги определяется для каждой из них залоговая стоимость (сумма, вносимая клиентом при взятии книги напрокат) и стоимость проката (сумма, которую клиент платит при возврате книги, получая назад залог). В библиотеку обращаются читатели. Все читатели регистрируются в картотеке, которая содержит стандартные анкетные данные (фамилия, имя, отчество, телефон). Каждый читатель может обращаться в библиотеку несколько раз. Все обращения читателей фиксируются, при этом по каждому факту выдачи книги запоминаются дата выдачи и ожидаемая дата возврата. Стоимость проката книги должна зависеть не только от самой книги, но и от срока ее проката. Кроме того, необходимо добавить систему штрафов за вред, нанесенный книге и систему скидок для некоторых категорий читателей. Произведения авторов, составляющие библиотечный фонд, также можно разделить на различные категории, характеризующиеся собственным набором атрибутов: учебники, повести, романы, статьи и т.д. Сотрудники библиотеки, работающие в различных залах различных библиотек, ведут учет читателей, а также учет размещения и выдачи литературы.
В результате проведённого анализа предметной области базы данных «Библиотека» легко перечислить основные сущности этой БД. В реляционную модель проектированной БД будут входить следующие таблицы: Сотрудники, Книги, Авторы, Читатели, Места в библиотеке в библиотеке, Жанры, Обращения. Список сущностей представлен в таблице №1.
Таблица №1 – Список сущностей
-
№
Название
Назначение
1
Сотрудники
Информация о сотрудниках библиотеки
2
Книги
Описание книг, размещенных в библиотеке
3
Авторы
Информация об авторах книг
4
Читатели
Информация о читателях библиотеки
5
Места в библиотеке
Информация о расположении книг в библиотеке
6
Жанр
Описание жанров книги
7
Обращения
Подробное описание каждой заявки библиотеки
Для каждой таблицы (сущности) были приведены описания её атрибутов. Атрибуты [3] – колонки таблицы, которые выражают определённое свойство. Списки атрибутов для сущностей Сотрудники, Книги, Авторы, Читатели, Места в библиотеке в библиотеке, Жанры, Обращения представлены в таблице №2, таблице №3, таблице №4, таблице №5, таблице №6, таблице №7, таблице №8 соответственно.
Таблица №2 – Описание атрибутов сущности Сотрудники
-
Название
Назначение
Тип данных
Может быть NaN
ID сотрудника
Идентификационный номер сотрудника
Числовой
Нет
ФИО
ФИО сотрудника
Текстовой
Нет
Телефон
Телефон сотрудника
Текстовой
Нет
Таблица №3 – Описание атрибутов сущности Книги
-
Название
Назначение
Тип данных
Может быть NaN
ID книги
Идентификационный номер книги
Числовой
Нет
ID автора
Идентификационный номер автора книги
Числовой
Нет
ID места
Идентификационный номер места книги в библиотеке
Числовой
Нет
ID жанра
Идентификационный номер жанра книги
Числовой
Нет
Название
Название книги
Текстовой
Нет
Залоговая стоимость
Залоговая стоимость книги
Числовой
Нет
Стоимость проката
Стоимость проката книги за сутки
Числовой
Нет
Таблица №4 – Описание атрибутов сущности Авторы
-
Название
Назначение
Тип данных
Может быть NaN
ID автора
Идентификационный номер автора
Числовой
Нет
ФИО
ФИО автора
Текстовой
Нет
Таблица №5 – Описание атрибутов сущности Читатели
-
Название
Назначение
Тип данных
Может быть NaN
ID читателя
Идентификационный номер читателя
Числовой
Нет
ФИО
ФИО читателя
Текстовой
Нет
Скидка
Индивидуальная скидка читателя
Числовой
Нет
Телефон
Телефон читателя
Текстовой
Нет
Таблица №6– Описание атрибутов сущности Места в библиотеке
-
Название
Назначение
Тип данных
Может быть NaN
ID места
Идентификационный номер места
Числовой
Нет
Отдел
Название отделения
Текстовой
Нет
Номер полки
Номер полки в отделе
Числовой
Нет
Таблица №7 – Описание атрибутов сущности Жанры
-
Название
Назначение
Тип данных
Может быть NaN
ID жанра
Идентификационный номер жанра
Числовой
Нет
Жанр
Название жанра
Текстовой
Нет
Таблица №8 – Описание атрибутов сущности Обращения
-
Название
Назначение
Тип данных
Может быть NaN
ID обращения
Идентификационный номер обращения
Числовой
Нет
ID книги
Идентификационный номер книги
Числовой
Нет
ID читателя
Идентификационный номер читателя, взявшего книгу
Числовой
Нет
ID сотрудника
Идентификационный номер сотрудника, выдавшего книгу
Числовой
Нет
Дата начала проката
Дата начала проката книги
Дата
Нет
Ожидаемая дата возврата
Ожидаемая дата возврата книги
Дата
Нет
Фактическая дата возврата
Фактическая дата возврата книги
Дата
Нет
Сумма
Сумма к оплате за прокат книги
Числовой
Да
Статус
Статус заявки
Текстовой
Да
По результатам запросов к базе данных может формироваться список доступных книг, их описание, каталогов клиентов для работы с ними, расчёт стоимости проката книги, а также местоположение книги в библиотеке.
Администратор имеет полное право доступа к БД [4], отвечает за её работу. Директор библиотеки определяет цену и стоимость книг; отбирает информацию о финансовой деятельности библиотеки за отчётный период; анализирует эффективность работы сотрудников. Библиотекарь: работает с читателями (регистрирует новых читателей в картотеке, выдаёт запрашиваемые книги и принимает обратно); проверяет, какие книги у каких читателей «просрочены».