Описание связей между сущностями



Nbsp;

ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ КНИЖНОЙ БИБЛИОТЕКИ

 

 

Москва 2017

Содержание:

 

Введение Стр3
Анализ предметной области Стр4
Описание сущностей Стр5
Описание связей между сущностями Стр9
Логическое моделирование Стр10
Загрузка БД на SQLServer Стр11
Написание SQL запросов Стр16
Создание интерфейса для базы данных Стр17  
Заключение Стр19
Список литературы Стр20

 

 


Введение

 

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

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

Этапы выполнения работы:

1) Анализирование предметной области

2) Создание базы данных

3) Описание сущностей базы данных

4) Описание связей между сущностями

5) Построение логической модели базы данных

6) Построение физической модели базы данных

7) Создание и написание запросов для базы данных

8) Создание интерфейса для использования базы данных ( приложение)

 

Анализ предметной области

 

 

Проектирование успешной базы данных основано на четком анализирование предметной области.

Под предметной областью в данном случае понимают какую-либо часть жизненной деятельности человека. В нашем случае – книжная библиотека.

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

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

В первую очередь требуется знать всю базовую информацию о книгах, которая позволит искать и сортировать их (по жанрам, например). Учет количества книг (наличность) тоже очень важен. Может получиться так, что определенные книги закончились, или стали непригодными для использования.

Все книги будут распределяться между читателями и библиотекой ( часть книг находятся в библиотеке, другая часть – у читателей). Каждый читатель может взять некоторое количество книг (здесь может быть внесено ограничение, по усмотрению самой библиотеки). Библиотека дает книги в аренду на определенный срок, требуется информация о получении/сдачи книг.

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

 

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

 

 

Описание сущностей. (LogicalLevel)

 

 

Books

Имя атрибута: Тип: Описание
ID_Books INTEGER Идентификационный номер(ID) книги. Ключевой атрибут
Name_books VARCHAR(20) Название книги
Publishing_books LONG TEXT Название книжного издания
Genre_books VARCHAR(20) Жанр книги
ISBN_books VARCHAR(20) Международный стандартный номер книги

 

 

Authors_books

Имя атрибута: Тип: Описание
ID_Books INTEGER Внешний ключ для связи с сущностью Books
ID_author INTEGER Внешний ключ для связи с сущностью Authors

Authors

Имя атрибута: Тип: Описание
ID_author INTEGER Идентификационный номер(ID) автора книги. Ключевой атрибут
FirstName_author VARCHAR(20) Имя автора
LastName_author VARCHAR(20) Фамилия автора
BirthDate_author DATE Дата рождения автора

 

Genre

Имя атрибута: Тип: Описание
ID_Books INTEGER Внешний ключ для связи с сущностью Books
GenreName VARCHAR(20) Название жанра

BooksRent

Имя атрибута: Тип: Описание
ID_Books INTEGER Внешний ключ для связи с сущностью Books
ReadingPassID_clients INTEGER Внешний ключ для связи с сущностью Clients
GiveawayDate DATE Дата выдачи книги
ReturnDate DATE Дата, к которой необходимо вернуть книгу

 

 

Clients

 

Имя атрибута: Тип: Описание
ReadingPassID_clients INTEGER Индивидуальный номер читателя (читательский билет). Ключевой атрибут
FullName_clients VARCHAR(20) Дата выдачи книги
DateOfBirth_clients DATE Дата возвращения книги в библиотеку
Passport_clients INTEGER Номер паспорта
TelNumber_clients INTEGER Номер телефона

 

Debts

Имя атрибута: Тип: Описание
ID_Books INTEGER Внешний ключ для связи с сущностью Books
ReadingPassID_clients INTEGER Внешний ключ для связи с сущностью Clients
Quantity INTEGER Показывает количество книг, которые должен читатель

 

Сущность Booksсодержит атрибуты, подробно описывающие необходимую информацию о каждой книге в библиотеке. Наличие данных атрибутов в дальнейшем даст возможность поиска книг по любым параметрам (название, автор, жанр и т.д)

Сущность Authorsсодержит информацию об авторе конкретных книг. Данная сущность связывается с BooksчерезAuthor_Books

Debtsпоказывает номер читательского билета должников библиотеки, а так же количество книг, которые не были возвращены вовремя.

Сущность Clientsсодержит атрибуты, показывающие информацию о пользователе библиотеки.

Genreсодержит информацию о жанрах книги.

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

 

 

Описание связей между сущностями

 

Сущность Booksимеет идентифицирующую связь «один ко многим» с сущностью Author_books. У одной книги может быть несколько авторов.

Сущность Authorsимеет идентифицирующую связь «один ко многим» с сущностью Authors_books, так как одному автору могут принадлежать несколько книг.

Для будущего поиска книг по жанрам была создана сущность Genre. Сущность Books имеет идентифицирующую связь «дин ко многим» ( одна книга может сразу же относиться к нескольким жанрам) с Genre.

Booksимеет идентифицирующую связь «один к одному»c сущностью, показывающая информацию о выдаче книги (BooksRent), потому что книга с уникальным номером IDне может быть взята одновременно несколькими пользователями библиотеки.

Сущность Clients имеет идентификационную…

Логическая модель в ErWin

С помощью программы ErWinбыла создана логическая модель базы данных библиотеки

 

 


Дата добавления: 2018-04-15; просмотров: 609; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!