Пиши Дома Нужные Работы

Обратная связь

Разработка таблиц и схемы базы данных

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

по дисциплине «Базы данных»

 

 

Студентка группы

 

 

Руководитель Козлова Ольга Семёновна

 

 

№ зачетной книжки

 

 

САМАРА

Рецензия


Оглавление

1. Постановка задачи. 4

2. Инфологическая модель. 6

Семантическое моделирование. 6

Концептуальная модель. 8

3. Разработка таблиц и схемы базы данных. 9

4. Запросы системы.. 14

5. Выводы.. 22

6. Список используемых источников. 22

 


Постановка задачи

Вариант 8

Задача курсовой работы состоит в том, чтобы создать систему поддержки управления библиотекой, которая должна обеспечивать операции (добавление, удаление и изменение) над данными о читателях.

В регистрационном списке читателей должны храниться следующие сведения:

· фамилия, имя и отчество читателя;

· номер его читательского билета;

· дата выдачи билета.

Наряду с регистрационным списком системой должен поддерживаться каталог библиотеки, где хранится информация о книгах:

· название книги;

· список авторов;

· библиотечный шифр;

· год и место издания;

· название издательства;

· общее количество экземпляров книги в библиотеке;

· количество экземпляров, доступных в текущий момент.

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

В системе должна осуществляться регистрация взятых и возвращенных читателем книг.

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



Система должна выдавать следующую справочную информацию:

· какие книги были выданы за данный промежуток времени;

· какие книги были возвращены за данный промежуток времени;

· какие книги находятся у данного читателя;

· имеется ли в наличии некоторая книга.

 

Вариант задания предусматривает разработку ER-диаграммы, хранящей список читателей, каталог книг и записи о выдаче книг.

Реализация настоящей БД должна быть произведена средствами СУБД MySQL.

В MySQL должны разрабатыватьсятаблицы, связи между ними.

Необходимо также разработать не менее 10 запросов следующих типов:

1. С использованием внутреннего соединения по одному полю;

2. С использованием косвенно связанных таблиц;

3. С использованием внешнего соединения таблиц;

4. С использованием рекурсивного соединения;

5. С использованием вложенного запроса;

6. С использованием функций агрегирования;

7. Перекрестный запрос;

8. С параметрами;

9. С вычисляемым полем.

Инфологическая модель

Семантическое моделирование

 

Из описания предметной области следуют:

1.Сущности:

· Каталог библиотеки;

· Читатель;

· Запись читательского билета;

 

2.Атрибуты:

· Библиотечный шифр;

· Название книги;

· Автор;

· Год издания;

· Место издания;

· Название издательства;

· Всего экземпляров;

· Доступное количество;

являются атрибутами сущности «Каталог библиотеки».

· Номер билета;

· Фамилия;

· Имя;

· Отчество;

· Адрес;

· Телефон;

· Дата выдачи билета;

являются атрибутами сущности «Читатель».

· № строки записи;

· Библиотечныйшифр;

· Номер билета;

· Дата выдачи;

· Дата возврата;

являются атрибутами сущности «Запись читательского билета».

3.Ключи сущностей:

· Номер билета является первичным ключом сущности «Читатель»;

· Библиотечный шифр является первичным ключом сущности «Каталог библиотеки»;

· № строки записи является первичным ключом сущности «Запись читательского билета»;

4.Связи сущностей:

Между сущностями «Читатель» и «Запись читательского билета»:

Слева направо: «Читатель может иметь несколько записей читательского билета»;

Справа налево: «Каждая запись читательского билета должна принадлежать одному читателю»;

Тип связи:один -ко-многим.

Между сущностями «Каталог библиотеки» и «Запись читательского билета»:

Слева направо: «Книгаможет быть выдана несколько раз»;

Справа налево: «Каждая запись читательского билета соответствует одной книге»;

Тип связи: один-ко-многим.

Концептуальная модель заданной предметной области представлена на рис. 1

       
   
 

 

 

 


       
   
Запись читательского билета
 
 

 

 


       
 
 
   

 

 


Рис 1. ER-диаграмма предметной области

 

 

Разработка таблиц и схемы базы данных

 

Для создания данной системы управления данными понадобятся следующие таблицы:

· Catalog_library

· Chitatel

· Zap_chit_bil

В СУБД MySQL создание таблицы происходит с помощью команды CREATE TABLE.

Создание таблицы Catalog_library(Каталог библиотеки):

CREATE TABLE ` Catalog_library `( ` Bibl_shiphr ` VARCHAR( 10 ) NOT NULL ,

` Nazv_knigi ` VARCHAR(70) NOT NULL ,

` Author ` VARCHAR( 20 ) NOT NULL ,

` God_izd ` YEAR( 4 ) NOT NULL ,

` Mesto_izd ` VARCHAR( 20 ) NOT NULL ,

` Nazv_izd ` VARCHAR( 25 ) NOT NULL ,

` Vsego ` INT( 5 ) NOT NULL,

` Dostypno ` INT( 5 ) NOT NULL);

Добавление первичного ключа таблицы Catalog_library(Каталог библиотеки):

ALTER TABLE ` Catalog_library ` ADD PRIMARY KEY ( ` Bibl_shiphr ` )

 

Структура таблицы Catalog_library(Каталог библиотеки):

Создание таблицы Chitatel(Читатель):

CREATE TABLE ` Chitatel `( ` Nom_bil ` INT( 7 ) NOT NULL ,

` Surname ` VARCHAR(15) NOT NULL ,

`Name` VARCHAR( 10 ) NOT NULL ,

` Patronymic ` VARCHAR( 15 ) NOT NULL,

` Address ` VARCHAR( 50 ) NOT NULL ,

` Telephone ` VARCHAR( 15 ) NOT NULL

` Data_vidachi ` DATE NOT NULL);

Добавление первичного ключа таблицы Chitatel(Читатель):

ALTER TABLE ` Chitatel ` ADD PRIMARY KEY ( ` Nom_bil ` )

Структура таблицы Chitatel(Читатель):

 

 

Создание таблицы Zap_chit_bil(Запись читательского билета):

CREATE TABLE `Zap_chit_bil` (`Nom_stroki_zap` INT(5) NOT NULL AUTO_INCREMENT,

` Bibl_shiphr ` VARCHAR( 10 ) NOT NULL ,

` Nom_bil ` INT( 7 ) NOT NULL ,

` Data_vid ` DATE NOT NULL ,

` Data_vozv ` DATE NOT NULL) ;

Добавление первичного ключа таблицы Zap_chit_bil(Запись читательского билета):

ALTER TABLE ` Zap_chit_bil ` ADD PRIMARY KEY ( ` Nom_stroki_zap ` )

Структура таблицы Zap_chit_bil(Запись читательского билета):

Общая структура базы данных

С помощью команд INSERT INTO и VALUES происходит вставка строк внутрь той или иной таблицы.

Вставка строки для таблицы Catalog_library(Каталог библиотеки) выполняется следующим образом:

INSERT INTO`Catalog_library` ( `Bibl_shiphr` , `Nazv_knigi` , `Author` , `God_izd` , `Mesto_izd` , `Nazv_izd` , `Vsego` , `Dostypno` )

VALUES( ' 681.3А47 ', ' Информатика 2001:учеб.пособие', ' Алексеев, А.П. ', ' 2001 ', ' Самара', ' СОЛОН-Р ', '50', '9');

Для вставки последующих значений в каждую таблицу команды INSERT INTOиVALUES выполняются аналогично.

Данные в таблице Catalog_library(Каталог библиотеки):

 

Данные в таблице Chitatel(Читатель):

Данные в таблице Zap_chit_bil(Запись читательского билета):

Запросы системы

 

Для данной системы было создано 11 запросов:

Запрос 1.Какие книги были выданы за промежуток времени с 12 по 31-ое марта;

Создается по данным таблиц Zap_chit_bil(Запись читательского билета), Catalog_library (Каталог библиотеки) и является запросом с использованием внутреннего соединения по одному полю:

 

 

Результат выполнения запроса 1:

 

 

Запрос 2. Какие книги находятся у читателя Бантюкова;

Создается по данным таблиц Chitatel (Читатель), Zap_chit_bil(Запись читательского билета), Catalog_library (Каталог библиотеки) и является запросом с использованием косвенно связанных таблиц:

 

Результат выполнения запроса 2:

Запрос 3.Вывести, в какие еще дни выдавались книги, выданные 10 марта;

Создается по данным таблиц Zap_chit_bil(Запись читательского билета), Catalog_library (Каталог библиотеки) и является вложенным запросом:

Результат выполнениязапроса 3:

Запрос 4. Выбрать всех читателей, у которых время возврата книги приходится на промежуток между 24 марта и 6 апреля;

Создается по данным таблиц Chitatel(Читатель), Zap_chit_bil(Запись читательского билета) и является запросом с использованием левого внешнего соединения таблиц:

Результат выполнения запроса 4:

 

 

Запрос 5. Найти номера билетов читателей, которые взяли те же книги, что и читатель Степанова, номер билета которой 757468;

Создается по данным таблицы Zap_chit_bil(Запись читательского билета)и является запросом с использованием рекурсивного соединения:

 

 

Результат выполнения запроса 5:

Запрос 6. Вывести доступное количество экземпляров книг, которые взял читатель Рунжин с номером билета 365708;

Создается по данным таблиц Catalog_library (Каталог библиотеки), Zap_chit_bil(Запись читательского билета)и является вложенным запросом:

 

Результат выполнения запроса 6:

Запрос 7. Найти минимальное и максимальное количество доступных книг;

Создается по данным таблицы Catalog_library (Каталог библиотеки) и является запросом с использованием функций агрегирования MIN, MAX:

Результат выполнения запроса 7:

Запрос 8. Вывести дату выдачи и возврата каждой книги (с учетом того, что одна и та же книга может быть выдана несколько раз);

Создается по данным таблиц Catalog_library (Каталог библиотеки), Zap_chit_bil(Запись читательского билета) и является перекрестным запросом:

 

Результат выполнения запроса 8:

 

Запрос 9. Какие книги были возвращены за промежуток времени с 15-ого по 29-ое марта;

Создается по данным таблиц Catalog_library (Каталог библиотеки), Zap_chit_bil(Запись читательского билета) и является запросом с параметрами:

 

Результат выполнения запроса 9:

Запрос 10. Посчитать, какое количество книг находится у каждого из читателей;

Создается по данным таблиц Chitatel(Читатель), Zap_chit_bil(Запись читательского билета) и является запросом с использованием вычисляемого поля:

 

Результат выполнения запроса 10:

Запрос 11. Имеется ли в наличии книга «Информационные технологии управления» (если да, то какое количество их имеется в наличии и какое доступно на данный момент);

Создается по данным таблицы Catalog_library (Каталог библиотеки) и является запросом с параметрами:

 

 

Результат выполнениязапроса 11:


Выводы

· В данной работе была исследована предметная область «Библиотечная система»;

· Построена инфологическая модель;

· Разработана даталогическая модель базы данных средствами MySQL, включающая 3 таблицы и соответствующие связи между ними;

· Разработаны 11 запросов для отображения данных из таблиц.






ТОП 5 статей:
Экономическая сущность инвестиций - Экономическая сущность инвестиций – долгосрочные вложения экономических ресурсов сроком более 1 года для получения прибыли путем...
Тема: Федеральный закон от 26.07.2006 N 135-ФЗ - На основании изучения ФЗ № 135, дайте максимально короткое определение следующих понятий с указанием статей и пунктов закона...
Сущность, функции и виды управления в телекоммуникациях - Цели достигаются с помощью различных принципов, функций и методов социально-экономического менеджмента...
Схема построения базисных индексов - Индекс (лат. INDEX – указатель, показатель) - относительная величина, показывающая, во сколько раз уровень изучаемого явления...
Тема 11. Международное космическое право - Правовой режим космического пространства и небесных тел. Принципы деятельности государств по исследованию...



©2015- 2024 pdnr.ru Все права принадлежат авторам размещенных материалов.