Создание базы данных "Библиотека"

Создание базы данных "Библиотека"

Содержание



Введение

1. Задание

2. Диаграмма "сущность - связь"

3. Нормализация отношений (таблиц)

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

5. Основные характеристики используемой СУБД

6. Разработка меню, форм, инструментальных панелей и др.

7. Разработка запросов

8. Примеры обработки запросов

9. Разработка отчета

Заключение

Список используемой литературы



Введение



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

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

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

Цель работы: разработать базу данных "библиотека".

Задачи работы:

- разработать базу данных;

- создать отчеты;

- создать запросы.

1. Задание



Разработать базу данных "Библиотека". Сведения:

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

- Фамилия, имя, отчество;

- Домашний адрес;

- Телефон;

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

- Авторы;

- Издательство, место, год издания;

- Объем книги;

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

- Цена;

- Количество экземпляров в фондах библиотеки;

- Дата выдачи книги;

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

- Заказы на бронирование книг (данные книги, номер билета читателя, дата заказа).

Запросы:

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

- Сведения о читателях, у которых находится определенная книга;

- Сведения о читателе, прочитавшем за определенный интервал времени максимальное количество книг;

- Сведения о наличии определенной книги в фондах библиотеки;

- Вывод сведений о домашнем адресе и телефоне определенного читателя.

Отчет:

Заказы на бронирование книг с группировкой и сортировкой по датам заказа.

2. Диаграмма "сущность - связь"



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

Выделим основные сущности и установим между ними связи. На рисунке 1 представлена диаграмма "сущность-связь".





Рисунок 1 – Диаграмма "сущность-связь"



3. Нормализация отношений (таблиц)



Отношение находится в первой нормальной форме (1НФ), если значения атрибутов (то есть домены), из которых построено данное отношение, являются простыми, неделимыми, иначе говоря, атомарными значениями.

Приведем к первой нормальной форме. Выделим следующие самостоятельные группы полей и поместим их в отдельные таблицы. На первый взгляд их 4: Информация о читателе, Информация и книге, Выдача книг, Бронирование книг. Добьемся атомарности всех полей.



Таблица 1 Таблица "Информация о читателе"

№

Поле

Описание

1

Номер билета

Номер читательского билета

2

Фамилия

Фамилия читателя

3

Имя

Имя читателя

4

Отчество

Отчество читателя

5

Телефон

Телефон для связи с читателем

6

Адрес

Адрес читателя



Таблица 2 Таблица "Информация о книге"

№

Поле

Описание

1

Шифр книги

Библиотечный шифр книги

2

Название

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

3

Код издательства

Ссылка на код издательства

4

Год издания

Год издания книги

5

Объем книги

Объем книги в листах

6

Цена

Цена книги

7

Количество

Количество экземпляров в фондах библиотеки



Таблица 3 Таблица "Выдача книг"

№

Поле

Описание

1

Код выдачи

Код выдачи книги

2

Шифр книги

Ссылка на библиотечный шифр книги

3

Код читательского билета

Ссылка на код читательского билета

4

Дата выдачи книги

Дата выдачи книги

5

Дата возврата книги

Дата возврата книги



Таблица 4 Таблица "Бронирование книг"

№

Поле

Описание

1

Код брони

Код брони книги

2

Шифр книги

Ссылка на библиотечный шифр книги

3

Код читательского билета

Ссылка на код читательского билета

4

Дата заказа

Дата заказа книги



Таблица 5 Таблица "Издательства"

№

Поле

Описание

1

Код издательства

Код издательства

2

Наименование

Наименование издательства

3

Код города

Ссылка на город издательства



Таблица 6 Таблица "Города"

№

Поле

Описание

1

Код города

Код города

2

Наименование

Наименование города



Таблица 7 Таблица "Авторы"

№

Поле

Описание

1

Код автора

Код автора

2

Фамилия

Фамилия автора

3

Имя

Имя автора

4

Отчество

Отчество автора



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



Таблица 8 Таблица "Авторы книг"

№

Поле

Описание

1

Код записи

Код записи

2

Шифр книги

Ссылка на шифр книги

3

Код автора

Ссылка на код автора



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

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

Приведем ко второй нормальной форме. Определим ключи.



Таблица 9 Ключевые поля таблиц

Таблица

Первичный ключ

Простой ключ

Информация о читателе

Номер билета



Информация о книге

Шифр книги

1) Код автора

2) Код издательства

Выдача книг

Код выдачи

1) Шифр книги

2) Код читательского билета

Бронирование книг

Код брони

1) Шифр книги

2) Код читательского билета

Издательства

Код издательства

1) Код города

Города

Код города



Авторы

Код автора



Авторы книг

Код записи

1) Шифр книги

2) Код автора



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

Отношение находится в третьей нормальной форме (3НФ) тогда и только тогда, когда отношение находится в 2НФ и все неключевые атрибуты взаимно независимы.

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



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



Представим структуру таблиц.



Таблица 10 Таблица "Информация о читателе"

№

Поле

Тип

Размер

Описание

1

Номер билета

Счетчик



Номер читательского билета

2

Фамилия

Текстовый

60

Фамилия читателя

3

Имя

Текстовый

60

Имя читателя

4

Отчество

Текстовый

60

Отчество читателя

5

Телефон

Текстовый

20

Телефон для связи с читателем

6

Адрес

Текстовый

60

Адрес читателя





Рисунок 2 – Таблица "Информация о читателе"



Таблица 11 Таблица "Информация о книге"

№

Поле

Тип

Размер

Описание

1

Шифр книги

Счетчик



Библиотечный шифр книги

2

Название

Текстовый

60

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

3

Код издательства

Числовой

5

Ссылка на код издательства

4

Год издания

Числовой

4

Год издания книги

5

Объем книги

Числовой

5

Объем книги в листах

6

Цена

Денежный



Цена книги

7

Количество

Числовой

3

Количество экземпляров в фондах библиотеки





Рисунок 3 – Таблица "Информация о книге"



Таблица 12 Таблица "Выдача книг"

№

Поле

Тип

Размер

Описание

1

Код выдачи

Счетчик



Код выдачи книги

2

Шифр книги

Числовой

5

Ссылка на библиотечный шифр книги

3

Код читательского билета

Числовой

5

Ссылка на код читательского билета

4

Дата выдачи книги

Дата

Краткий формат даты

По умолчанию =Date()

Дата выдачи книги

5

Дата возврата книги

Дата

Краткий формат даты

Дата возврата книги





Рисунок 4 – Таблица "Выдача книг"



Таблица 13 Таблица "Бронирование книг"

№

Поле

Тип

Размер

Описание

1

Код брони

Счетчик

5

Код брони книги

2

Шифр книги

Числовой

5

Ссылка на библиотечный шифр книги

3

Код читательского билета

Числовой

5

Ссылка на код читательского билета

4

Дата заказа

Дата

Краткий формат даты

По умолчанию =Date()

Дата заказа книги





Рисунок 5 – Таблица "Бронирование книг"



Таблица 14 Таблица "Издательства"

№

Поле

Тип

Размер

Описание

1

Код издательства

Счетчик



Код издательства

2

Наименование

Текстовый

60

Наименование издательства

3

Код города

Числовой

5

Ссылка на город издательства





Рисунок 6 – Таблица "Издательства"



Таблица 15 Таблица "Города"

№

Поле

Тип

Размер

Описание

1

Код города

Счетчик



Код города

2

Наименование

Текстовый

60

Наименование города





Рисунок 7 – Таблица "Города"



Таблица 16 Таблица "Авторы"

№

Поле

Тип

Размер

Описание

1

Код автора

Счетчик



Код автора

2

Фамилия

Текстовый

60

Фамилия автора

3

Имя

Текстовый

60

Имя автора

4

Отчество

Текстовый

60

Отчество автора





Рисунок 8 - Таблица "Авторы"



Таблица 17 Таблица "Авторы книг"

№

Поле

Тип

Размер

Описание

1

Код записи

Счетчик



Код записи

2

Шифр книги

Числовой

5

Ссылка на шифр книги

3

Код автора

Числовой

5

Ссылка на код автора





Рисунок 9 - Таблица "Авторы книг"

Расставим связи между таблицами (рисунок 10).





Рисунок 10 – Схема данных



Все таблицы связаны между собой связью типа "Один-ко-многим". На примере таблиц "Издательства" и "Города" это означает, что одно издательство может иметь только один город, но в таблице "Издательства" может присутствовать множество записей таблицы "Города". Т.е. разные издательства могут иметь одинаковые названия городов.

Аналогично связаны между собой остальные таблицы.



5. Основные характеристики используемой СУБД



В результаты мы получили СУБД, обладающую рядом характеристик.

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

- добавлять в таблицу одну или несколько записей;

- удалять из таблицы одну или несколько записей;

- обновлять значения некоторых полей в одной или нескольких записях;

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

Разработанная СУБД организует хранение информации таким образом, чтобы ее было удобно:

- просматривать;

- пополнять;

- изменять;

- искать нужные сведения,

- делать любые выборки,

- осуществлять сортировку в любом порядке.



6. Разработка меню, форм, инструментальных панелей и др.



Разработаем формы для каждой из таблиц и занесем в них данные.





Рисунок 11 – Форма "Авторы"





Рисунок 12 – Форма "Города"





Рисунок 13 – Форма "Издательства"





Рисунок 14 – Форма "Информация о книге"

Форма "Информация о книге" имеет подчиненную форму "Авторы книг", через которую можно назначить несколько авторов одной книге.





Рисунок 15 – Форма "Информация о читателе"





Рисунок 19 – Форма "Бронирование книг"



В данной форме требуется ввести либо "Шифр книги" либо выбрать наименование книги. Второе поле база данных установит самостоятельно.





Рисунок 20 – Форма "Выдача книг"



Создадим главную кнопочную форму.





Рисунок 21 – Форма "Главная кнопочная форма"



7. Разработка запросов



Разработаем запросы.

1) Вывод сведений о книгах, взятых определенным читателем.





Рисунок 22 – Запрос "Вывод сведений о книгах, взятых определенным читателем"



2) Сведения о читателях, у которых находится определенная книга.

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



Рисунок 23 – Запрос "Сведения о читателях, у которых находится определенная книга"



3) Сведения о читателе, прочитавшем за определенный интервал времени максимальное количество книг.

Данный запрос будет создан при помощи двух запросов.





Рисунок 24 – Запрос "Количество книг"



На основании него создадим другой запрос.





Рисунок 25– Запрос "Сведения о читателе, прочитавшем за определенный интервал времени максимальное количество книг"

4) Сведения о наличии определенной книги в фондах библиотеки.





Рисунок 26 – Запрос "Сведения о наличии определенной книги в фондах библиотеки"



5) Вывод сведений о домашнем адресе и телефоне определенного читателя.





Рисунок 27 – Запрос "Вывод сведений о домашнем адресе и телефоне определенного читателя"



8. Примеры обработки запросов



Приведем результаты запросов.







Рисунок 28 – Результат запроса "Вывод сведений о домашнем адресе и телефоне определенного читателя"







Рисунок 29 – Результат запроса "Вывод сведений о книгах, взятых определенным читателем"







Рисунок 30 – Результат запроса "Сведения о наличии определенной книги в фондах библиотеки"







Рисунок 31 – Результат запроса "Сведения о читателе, прочитавшем за определенный интервал времени максимальное количество книг"







Рисунок 32 – Результат запроса "Сведения о читателях, у которых находится определенная книга"



9. Разработка отчета



Разработаем отчет: Заказы на бронирование книг с группировкой и сортировкой по датам заказа.





Рисунок 33 – Макет отчета "Бронирование книг"





Рисунок 34 – Результат отчета "Бронирование книг"



Заключение



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

Перед созданием базы данных необходимо ответить на следующие вопросы.

Каково назначение базы данных и кто будет ею пользоваться?

Какие таблицы (данные) будет содержать база данных?

Какие запросы и отчеты могут потребоваться пользователям этой базы данных?

Какие формы может потребоваться создать?

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

В результате работы мы получили базу данных "Библиотека", которая содержит запросы и отчеты:

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

- Сведения о читателях, у которых находится определенная книга;

- Сведения о читателе, прочитавшем за определенный интервал времени максимальное количество книг;

- Сведения о наличии определенной книги в фондах библиотеки;

- Вывод сведений о домашнем адресе и телефоне определенного читателя.

- Отчет: Заказы на бронирование книг с группировкой и сортировкой по датам заказа.



Список используемой литературы и электронных источников информации



Багриновский К.А. Хрусталев Е.Ю. Новые информационные технологии. – М.: ЭКО, 2007. – 250с.

Информатика и информационно-коммуникационные технологии. Базовый курс: Учебник для 8 класса/И.Г. Семакин, С.В. Русаков, Л.В. Шестакова. - М: БИНОМ, Лаборатория знаний, 2005. – 176 с.

Каймин В.А. Информатика: Учебник. - М.: ИНФРА-М, 2007 – 179 с.

Компьютерные технологии обработки информации / Под ред. С.В. Назарова. - М.: Финансы и статистика, 2005. – 248 с.

Соболь Б.В., Галин А.Б., Панов Ю.В. и др. Информатика: учебник. – М.: Феникс, 2007. – 446 с.

Моторин С.В. Управление данными Лекции 1-2: Проектирование реляционной БД (Пример).