Автоматизированная система Библиотека
Министерство образования и науки Российской Федерации
Тихоокеанский Государственный Экономический Университет
Экономический институт
Курсовая работа
на тему:
«Библиотека»
Владивосток 2009
Введение
Автоматизированная система «Библиотека»
В библиотеки хранятся несколько видов литературы: книги, газеты и журналы. Каждая книга (газета, журнал) относится к определенному разделу, который подразделяется по темам. У каждой книги (газеты, журнала) есть ряд характеристик: автор, название, издательство, место и пр.
Пользователями библиотеки являются читатели. На каждого читателя ведется формуляр, который содержит информацию о нем (адрес, фамилия, телефон), а также сведения о взятой книге, дате получения и возврата.
В случае задержки книги, начисляется пеня за каждый день просрочки (на руках книга может находиться 10 дней). В системе ведется учет книг, пользователей и финансов.
1. Функциональные возможности системы
Функциональные возможности системы «Библиотека» предоставляют следующие возможности:
Занесение новых книг в фонд библиотеки;
Просмотр информации о каждом записанном читателе;
Оплата пени за ту книгу, сдачу которой читатель просрочил;
Просмотреть информацию обо всех читателях, которые зарегистрированы в библиотеке: Ф.И.О., адрес;
Занесение новых читателей.
2. Построение информационно-логической модели базы данных
Выделение информационных объектов
1) документы и их реквизиты, подлежащие хранению в базе данных
Документ
Наименование реквизита (реальное)
Наименование реквизита в базе данных
Тип реквизита
Связи
Книги
Код
Название
Автор
Издательство
Тема
Тип
Место
В наличие
kod
nazvan
kod_avtor
kod_izdat
kod_temi
kod_tip
kod_mesto
v_nalichie
Ключевой
Описательный
Описательный
Описательный
Описательный
Описательный
Описательный
Описательный
Читатели
Код читателя
Фамилия
Улица
Дом
Квартира
kod_chitat
familiya
uliza
dom
kvartira
Ключевой
Описательный
Описательный
Описательный
Описательный
2) зависимые реквизиты
Описательные реквизиты
Ключевые реквизиты
nazvan
kod
kod_avtor
kod
kod_izdatel
kod
kod_temi
kod
kod_tip
kod
kod_mesto
kod
v_nalichie
kod
familiya
kod_chitat
uliza
kod_chitat
dom
kod_chitat
kvartira
kod_chitat
3) группировка реквизитов
Имя информационного объекта
Реквизиты
Ключевое поле
Описание
Информация
kod
nazvan
kod_avtor
kod_izdat
kod_temi
kod_tip
kod_mesto
v_nalichie
1
Автор
kod_avtor
fio
1
Издательство
kod_izdat
nazvan
1
Место
kod_mesto
nazvan
1
Раздел
kod_razd
nazvan
1
Тема
kod_temi
nazvan
kod_razd
1
Тип
kod_tip
tip
1
Экземпляр
kod_ekzempl
nazvan
ekzempl
kod_temi
v_nalichie
1
Таблица – связка
kod
chitat
nazvan
ekzempl
data_vid
data_voz
pr_dni
penya
Читатель
kod_chitat
familiya
uliza
dom
kvartira
1
Улица
kod_uliza
uliza
1
Структура информационных объектов базы данных
Автор
Название столбца
Тип
Ключевоеполе
Kod_avtor
Счетчик
fio
Текстовый
Издательство
Название столбца
Тип
Ключевое поле
kod_izdat
Счетчик
nazvan
Текстовый
Место
Название столбца
Тип
Ключевое поле
kod_mesto
Счетчик
nazvan
Текстовый
Раздел
Название столбца
Тип
Ключевое поле
kod_razd
Счетчик
nazvan
Текстовый
Тема
Название столбца
Тип
Ключевое поле
kod_temi
Счетчик
nazvan
Текстовый
kod_razd
Числовой
Тип
Название столбца
Тип
Ключевое поле
kod_tip
Счетчик
tip
Текстовый
Улица
Название столбца
Тип
Ключевое поле
kod_uliza
Счетчик
uliza
Текстовый
Таблица – Связка
Название столбца
Тип
Ключевое поле
kod
Счетчик
chitat
Числовой
nazvan
Текстовый
ekzempl
Числовой
data_vid
Дата/время
data_voz
Дата/время
pr_dni
Числовой
penya
Денежный
Читатель
Название столбца
Тип
Ключевое поле
kod_chitat
Счетчик
familiya
Текстовый
dom
Числовой
kvartira
Числовой
Экземпляр
Название столбца
Тип
Ключевое поле
kod_ekzempl
Счетчик
nazvan
Числовой
kod_temi
Числовой
v_nalichie
Логический
Информация
Название столбца
Тип
Ключевое поле
kod
Счетчик
nazvan
Текстовый
kod_avtor
Числовой
kod_mesto
Числовой
v_nalichie
Логический
Связи между информационными объектами
3. Проектирование алгоритмов обработки данных
Выбор книги
Книга на руках
Действие в течение года
Регистрация в библиотеке (если еще не зарегистрирован)
Поиск книги в базе
Занесение информации о взятой книги в карточку читателя
Подсчет пени каждого читателя
Добавление новых книг
Регистрация новых читателей
Запрос на выборку данных
Пеня – запрос для расчета задолженности читателей по каждой книге. Данные из таблицы – связки должны быть включены в запрос: chitat, nazvan, ekzempl, data_vid, data_voz, pr_dni, penya
Таблица - связка UPDATE [Пеня] Просчитывается пеня за каждый просроченный день Таблица - связка
Данный запрос, описанный в SQL:
UPDATE [Таблица – связка] SET [Таблица – связка].penya = [pr_dni]*0.9
На поиск книги – запрос, необходимый для поиска книги по необходимым параметрам (по автору, издательству, теме).
Взять книгу – берется книга и данные добавляются в таблицу «Таблица – связка».
Корректировка данных средствами запросов
Взять книгу – берется книга и данные добавляются в таблицу «Таблица – связка».
Данный запрос, описанный в SQL:
INSERT INTO [Таблица – связка] (chitat, nazvan, ekzempl)
SELECT TOP 1 Читатель.kod_chitat, Информация.nazvan, Экземпляр.kod_ekzempl
FROM Читатель, Информация INNER JOIN Экземпляр ON Информация.kod = Экземпляр.nazvan
WHERE (((Читатель.kod_chitat)=[Forms]! [Главная форма]! [Читатель, книги]. [Form]! [kod_chitat]) AND ((Информация.nazvan)=[Forms]! [Информация1]! [nazvan]));
Просроченные дни – обновляются данные (просроченные дни) в таблице «Таблица – связка».
4. Реализация пользовательского интерфейса средствами форм
Технология загрузки базы данных
– В первую очередь заполняются таблицы Автор, Тема, Тип, Издательство, Место.
– Таблица «Информация» заполняется на основе вышеприведенных таблиц.
– Затем заполняются таблицы «Экземпляр», «Улица», эти данные вклячаются в таблицы «Таблица – связка» и «Читатель».
Разработка форм
1) Составная форма
Читатель Информация
Источник записей: Читатель + Информация
Таблица, на которой строится форма: Информация
Корректируемые данные: Да
Количество записей: Информация
Недостатки: Невозможно корректировать таблицы, отсутствует иерархический просмотр.
2) Вложенная форма с одним уровнем
Главная:
Источник записей: Читатель
Таблица, на которой строится форма: Читатель
Корректируемые данные: Читатель
Количество записей: Читатель
Подчиненная:
Источник записей: Информация
Таблица, на которой строится форма: Информация
Корректируемые данные: Да
Количество записей: сколько книг у читателя
Достоинства: Возможность корректировать таблицу «Читатель», реализуется иерархический просмотр.
Вывод: Выбираем для реализации форму 2, так как она удовлетворяет всем поставленным требованиям.
Определение подсхемы данных
Для удобства пользования желательно заносить информацию о книгах, по каждому читателю имея возможность найти его с помощью поиска.
Информация Читатель
Подчиненная форма Основная часть
Общая структура вложенной формы
В соответствие с приведенной подсхемой определим структуру вложенной формы «Читатель». В основной части будут располагаться реквизиты читателя (название читателя: familiya). Подчиненная форма «Информация» будет содержать список книг, которыми пользуются читатели. Связь между формами будет осуществляться по полям код студента.
Таким образом, форму «Читатель» определяют:
Тип формы: вложенная;
Источник записей для основной части формы: таблица «Читатель»;
Включаемая подчиненная форма: «Информация».
Форму «Информацию» определяют:
Тип формы: подчиненная;
Источник строк: Информация.
Реквизиты основной и подчиненной формы
В заголовок формы «Читатель» включаем реквизит поле, содержащий имя читателя. С помощью этого поля будет осуществляться поиск записей в форме для каждого конкретного Читателя. В основную часть формы включаем подчиненную форму «Информация», в которую включаем поля, содержащие информацию о взятой книги.
7. Реализация алгоритмов обработки информации
7.1. Реализация алгоритмов средствами макросов
Разработаны следующие макросы:
Новая книга. Осуществляет открытие формы «Информация» для занесения данных о новой книге. Макрос привязан к событию «Нажатие кнопки» в форме «Информация 2».
Закрыть форму читатель. Закрывает форму «читатель».
Открыть новый читатель. Открывает форму «Новый читатель». Привязан к событию «Нажатие кнопки» в кнопке «Новый читатель».
Макрос1. Открывает запрос337, обновляет форму и записывает в таблицу взятую книгу.
Разработка приложения пользователя
Главная форма «Главная форма», в которой есть 2 вкладки:
Читатель
Книги
На вкладке «Читатель» при помощи поиска выбрать фамилию из списка или если она отсутствует зарегистрироваться, нажав кнопку «Новый читатель».
Также на вкладке «Читатель» есть кнопка «Взять книгу». Когда мы ее нажимаем то появляется форма «Информация1», где галочкой отмечается взятая книга.
На вкладке «Книги» мы можем посмотреть весь ассортимент книг.
Если пользователь хочет добавить в базу новую книгу, то он использует кнопку «Новая книга», после ее нажатия открывается форма «Информация».
Нравится материал? Поддержи автора!
Ещё документы из категории информатика:
Чтобы скачать документ, порекомендуйте, пожалуйста, его своим друзьям в любой соц. сети.
После чего кнопка «СКАЧАТЬ» станет доступной!
Кнопочки находятся чуть ниже. Спасибо!
Кнопки:
Скачать документ