Файл: Курсовая работа по дисциплине Базы и хранилища данных Разработка базы данных для предметной области Библиотека.docx
Добавлен: 04.12.2023
Просмотров: 207
Скачиваний: 4
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
МИНОБРНАУКИ РОССИИФедеральное государственное бюджетное образовательное учреждение высшего образования«Челябинский государственный университет» (ФГБОУ ВО «ЧелГУ»)Институт информационных технологийКафедра информационных технологий и экономической информатикиКУРСОВАЯ РАБОТАпо дисциплине «Базы и хранилища данных»__________«Разработка базы данных для предметной области «Библиотека»_________(тема)Выполнил студент__ Аврамец С.А. ______(Ф.И.О.)группы_<номер группы>_____заочной формы обучения направления подготовки _____<Название направления обучения> ____________________________________(подпись)«____» ____________ 20___г.
Челябинск2020Задание
Продолжение таблицы:
Ограничения предметной области:
Содержание
Задание 2
Содержание 4
Концептуальная модель БД 6
Логическая модель БД 8
Физическая модель БД 12
Описание приложения для работы с БД 15
Заключение 24
Библиография 25
Приложение 1. SQL скрипты 26
Приложение 2. Код веб-приложения 30
Заказчик использует базу данных, которая содержит информацию о работе библиотеки.Библиотека состоит из нескольких читальных залов (зал художественной литературы, зал технической литературы, зал иностранной литературы).Библиотекари выдают книги читателям.Требуемые функции системы, использующей базу данных:
Теперь определим атрибуты для каждой сущности:Таблица 2. Таблица атрибутов
Между сущностями определены следующие связи:Таблица 3. Таблица связей
Подобно тому, как выше рассмотрены атрибуты сущностей, рассмотрим атрибуты связей.Таблица 4. Атрибуты связей
Рисунок 1. Инфологическая диаграммаНа основе приведенного выше описания сущностей и связей составим ER-диаграмму. Логическая модель БДОсновная задача данного этапа проектирования - переложить концептуальную модель на реляционную.Для этого нужно определить все информационные единицы и связи между ними, задать их имена, а также некоторые количественные характеристики, например, длину элементов. Отношение представляется как определенным образом организованная таблица.Результатом работы на этом этапе будет ER-диаграмма в нотации «воронья лапка».Перед тем, как превращать модель базы в перечень таблиц в СУБД, необходимо избавиться от избыточности информации и аномалий исходных схем БД. Частично, эта работы была уже проведена на этапе инфологического проектирования - в отдельные сущности были выделены читальный зал и область знаний, которые изначально могли быть представлены в виде атрибутов книги.Составим таблицы, соответствующие сущностям.Таблица 5. readers - таблица с данными о читателях
Таблица 6. types - области знаний
Таблица 7. readrooms - читальные залы
Таблица 8. books - книги
| | Научный руководитель Фамилия, имя, отчество__Сичинский Д.А._ Должность____________________________ Ученая степень ________________________ Ученое звание _________________________ ______________________________________ (подпись) «___» _________ 20____г. |
-
Провести анализ предметной области по следующему описанию:
| название книги | название зала | Автор | Место издания | Издательство | Год издания | номер билета читателя | Область знаний |
| Море | зал художественной литературы | Пушкин А.С | Москва | Альфа | 1951 | 1 | Живописные рассказы |
| Принципы ООП | зал технической литературы | Буч | Челябинск | 2-комсомольца | 2000 | 2 | Программирование |
Продолжение таблицы:
| количество страниц | Дата выдачи книги | Дата возврата | Фио читателя | Дата рождения | Телефон |
| 17 | 22/10/2014 | 22/11/2014 | Алешкин Иван Николаевич | 18/11/1991 | +7 (954) 1111111 |
| 188 | 21/10/15 | 05/12/15 | Бородкин Семен | 25/05/1928 | |
-
Одна книга (Название, Автор, год издания) может быть в нескольких экземплярах. -
Один читатель не может взять более 5 книг. -
Один читатель не может взять 2 экземпляра (одинаковым названием, автором, год издания) одной книги. -
Дата выдачи, дата возврата и дата рождения хранятся в виде DD/MM/YYYY -
Телефон имеет вид +7 (111) 1765880 -
Области знаний бывают 3-х типов (любые). -
Читальных залы бывают 3-х типов (зал художественной литературы, зал технической литературы, зал иностранной литературы). -
Дата возврата книги не может быть раньше даты получения!
-
Выполнить концептуальное (инфологическое) проектирование. -
Выполнить даталогическое проектирование для реляционной базы данных. -
Выбрать СУБД (обосновав выбор) и выполнить физическое проектирование. -
Создать базу данных в выбранной СУБД с учетом ограничений предметной области. -
Реализовать следующие отчеты (запросы):
-
Посчитать за каждый месяц года, определенного пользователем, количество выдач книг. -
Вывести название и возраст книги самой старой книги в каждом из залов. -
Вывести читальный зал, в котором содержаться книги только заданных пользователем типов (типов при поиске может быть определено несколько) -
Вывести 5 лучших книг, которые за прошедший месяц пользовались наибольшим спросом.
-
Выбрать язык программирования и разработать приложение для работы с БД (формы ввода/редактирования данных и отчеты). -
Оформить пояснительную записку.
Содержание
Задание 2
Содержание 4
Концептуальная модель БД 6
Логическая модель БД 8
Физическая модель БД 12
Описание приложения для работы с БД 15
Заключение 24
Библиография 25
Приложение 1. SQL скрипты 26
Приложение 2. Код веб-приложения 30
-
Ведение учёта посетителей библиотеки -
Ведение учёта книг, имеющихся в библиотеке -
Ведение учёта посещений читателями библиотеки (регистрация выдачи книг на руки и их возврата)
-
Одна книга (Название, Автор, год издания) может быть в нескольких экземплярах. -
Один читатель не может взять более 5 книг. -
Один читатель не может взять 2 экземпляра (одинаковым названием, автором, год издания) одной книги. -
Дата выдачи, дата возврата и дата рождения хранятся в виде DD/MM/YYYY -
Телефон имеет вид +7 (111) 1765880 -
Области знаний бывают 3-х типов (любые). -
Читальных залы бывают 3-х типов (зал художественной литературы, зал технической литературы, зал иностранной литературы). -
Дата возврата книги не может быть раньше даты получения!
| Наименование сущности | Описание сущности | Первичный ключ |
| Книга | Книга, которую выдают на руки читателю | ID книги |
| Читальный зал | Читальный зал, в котором может находиться книга | ID читального зала |
| Область знаний | Сфера, о которой написана книга | ID области знаний |
| Читатель | Читатель, который берет в библиотеке книги на время | ID читателя |
Теперь определим атрибуты для каждой сущности:Таблица 2. Таблица атрибутов
| Сущность | Наименование атрибута | Тип значения | Может ли быть пустым |
| Книга | Название | VARCHAR | Нет |
| Автор | VARCHAR | Нет | |
| Год издания | INT | Нет | |
| Количество страниц | INT | Нет | |
| Место издания | VARCHAR | Нет | |
| Издательство | VARCHAR | Нет | |
| Читальный зал | Название | VARCHAR | Нет |
| Область знаний | Название | VARCHAR | Нет |
| Читатель | ФИО | VARCHAR | Нет |
| Телефон | VARCHAR | Нет | |
| День рождения | VARCHAR | Нет |
| Наименование связи | Тип связи | Атрибуты связи |
| Книга : область знаний | Один к одному | Нет |
| Книга : читальный зал | Один к одному | Нет |
| Читатель : книга | Один ко многим | Дата выдачи |
| Дата возврата | ||
| Список книг |
| Связь | Наименование атрибута | Тип значения | Может ли быть пустым | Атомарность |
| Читатель : книга | Дата выдачи | VARCHAR | Нет | Да |
| Дата возврата | VARCHAR | Нет | Да |
Рисунок 1. Инфологическая диаграммаНа основе приведенного выше описания сущностей и связей составим ER-диаграмму. Логическая модель БДОсновная задача данного этапа проектирования - переложить концептуальную модель на реляционную.Для этого нужно определить все информационные единицы и связи между ними, задать их имена, а также некоторые количественные характеристики, например, длину элементов. Отношение представляется как определенным образом организованная таблица.Результатом работы на этом этапе будет ER-диаграмма в нотации «воронья лапка».Перед тем, как превращать модель базы в перечень таблиц в СУБД, необходимо избавиться от избыточности информации и аномалий исходных схем БД. Частично, эта работы была уже проведена на этапе инфологического проектирования - в отдельные сущности были выделены читальный зал и область знаний, которые изначально могли быть представлены в виде атрибутов книги.Составим таблицы, соответствующие сущностям.Таблица 5. readers - таблица с данными о читателях
| наименование | описание |
| id (int, PK, autoincrement) | уникальный идентификатор читателя |
| name (varchar) | полное имя читателя |
| phone (varchar) | номер телефона |
| birthday (date) | дата рождения |
| наименование | описание |
| id (int, PK, autoincrement) | уникальный идентификатор области знаний |
| name (varchar) | название типа области знаний |
| наименование | описание |
| id (int, PK, autoincrement) | уникальный идентификатор читального зала |
| name (varchar) | название читального зала |
| наименование | описание |
| id (int, PK, autoincrement) | уникальный идентификатор книги |
| name (varchar) | название книги |
| phone (varchar) | автор книги |
| year (int) | дата публикации книги |
| pubplace (varchar) | город издания |
| pubhouse (varchar) | издательство |
| type (int, FK) | область знаний (идентификатор области из таблицы types) |
| readroom (int, FK) | читальный зал (идентификатор зала из таблицы readrooms) |