- •Введение
- •1. Постановка задачи
- •2.1.1. Программы для упорядочивания домашней библиотеки
- •2.1.1.1. BookSnake
- •2.1.1.2. PSD Home Library
- •2.1.1.3. Unicat
- •2.1.1.4. Учёт книг
- •2.1.4. Вывод
- •2.1.2. Автоматизированные библиотечные информационные системы
- •2.1.3. Электронные библиотеки
- •2.2.1.1. Microsoft SQL Server
- •2.2.1.2. Interbase
- •2.2.1.3. Firebird (FirebirdSQL)
- •2.2.1.4. MySQL
- •2.2.2.2. Microsoft Access
- •2.2.2.3. OpenOffice.org Base
- •2.2.3. Вывод
- •3.1.1. Инфологическая модель данных
- •3.1.2. Датологическая модель данных
- •3.1.3. Физическая модель данных
- •3.1.4. Построение схемы данных
- •3.2. Разработка интерфейса
- •3.2.1. Главная кнопочная форма «frmMain»
- •3.2.2. Форма «frmBooks». Работа с книгами
- •3.2.3. Форма «frmEditBook». Редактирование данных о книге
- •3.2.4. Форма «frmEditBooks». Редактирование данных об экземпляре книги
- •3.2.5. Форма «frmEditWeb». Редактирование данных о web-узле
- •3.2.6. Форма «frmVersion». Работа с ПО
- •3.2.7. Форма «frmEditSoft». Редактирование данных о ПО
- •3.2.8. Форма «frmEditManufacturer». Редактирование данных о производителе
- •3.2.9. Форма «frmEditVersion». Редактирование данных об экземпляре (версии) ПО
- •3.2.10. Форма «frmWeb». Web-узлы
- •4. Результаты испытаний
- •Заключение
- •Список источников
- •Приложение 1. Созданные в MS Access таблицы и примеры их наполнения
- •Приложение 2. Коды программ
- •Приложение 3. Техническое задание
Рисунок 2.6. OpenOffice.org 3.0 Base
2.2.3. Вывод
Клиент-серверные СУБД состоят из клиентской части (которая входит в состав прикладной программы) и сервера. Клиент-серверные СУБД обеспечивают разграничение доступа между пользователями и мало загружают сеть и клиентские машины. Сервер является внешней по отношению к клиенту программой, и по надобности его можно заменить другим. Недостаток клиентсерверных СУБД в самом факте существования сервера и больших вычислительных ресурсах, потребляемых сервером.
В рамках решаемой задачи подразумевается однопользовательская система, работающая на локальном компьютере. Поэтому для решения данной задачи более всего подходят настольные СУБД.
22
OpenOffice.org 3.0 Base не подходит для решения задачи по следующим причинам:
•не сохраняются связи между таблицами;
•малое количество документации на русском языке.
Поэтому для реализации был выбран Microsoft Access. Microsoft Access – настольная СУБД из состава пакета Microsoft Office. Он прост в использовании и имеется большое количество книг по его использованию (например, [3, 4, 5]).
В качестве формата хранения выбран формат Access 2000 (MS Office 2000).
23
3. Решение задачи 3.1. Проектирование базы данных
3.1.1. Инфологическая модель данных
В ходе анализа предметной области были выделены следующие сущности: Описание книги (Библиографическая ссылка, Авторы, Заголовок издания,
Место издания, Издательство, Аннотация)
Экземпляры книги (Книга, Тип книги, Место хранения, Уточнение места хранения, Расширение файла, Источник, Web, Год издания, Язык)
Производитель ПО (Наименование фирмы, Web)
Программный продукт (Наименование продукта, Производитель, Описание) Экземпляры ПО (ПО, Версия ПО, Лицензия, Операционная система, Язык
интерфейса, Место хранения, Уточнение места хранения)
Также в предметной области выделены следующие справочники: Тип изданий (Тип издания)
Тип места хранения книги (Тип места хранения) Расширения файла (Расширение, Комментарий) Язык (Язык)
WEB (URL, Описание URL)
Тип лицензии (Идентификатор, Наименование лицензии, Аннотация) Описанные выше сущности образуют связи, описанные в таблице 3.1.
Таблица 3.1. Связи между сущностями
Сущность |
Тип связи |
Сущность |
Тип изданий |
Один – ко многим |
Экземпляры книги |
Тип места хранения книги |
Один – ко многим |
Экземпляры книги |
Расширения файла |
Один – ко многим |
Экземпляры книги |
WEB |
Один – ко многим |
Экземпляры книги |
Язык |
Один – ко многим |
Экземпляры книги |
Описание книги |
Один – ко многим |
Экземпляры книги |
WEB |
Один – ко многим |
Производитель ПО |
Производитель ПО |
Один – ко многим |
Программный продукт |
Программный продукт |
Один – ко многим |
Экземпляры ПО |
Тип лицензии |
Один – ко многим |
Экземпляры ПО |
Язык |
Один – ко многим |
Экземпляры ПО |
Тип места хранения книги |
Один – ко многим |
Экземпляры ПО |
24
На рисунке 3.1. представлена инфологическая модель данных, разработанная при помощи AllFusion ERwin Data Modeler r7.2.
Описанные выше сущности образуют связи, описанные в таблице 3.1.
Рисунок 3.1. Инфологическя модель данных
3.1.2. Датологическая модель данных
На основе инфологической модели была разработана даталогическая модель (рисунок 3.2.).
Для хранения экземпляров выделенных сущностей создана база данных со структурой, приведённой ниже. Каждой сущности предметной области соответствует одна таблица базы данных. Для отображения связи между сущностями (типа «один ко многим») в подчиненную таблицу добавляется идентификатор (первичный ключ) главной таблицы.
25
Рисунок 3.2. Даталогическая модель данных tblBooksType – соответствует сущности «Тип изданий».
|
Таблица 3.2. Таблица tblBooksType |
|
Наименование поля |
Тип поля |
Описание |
ID_BookType |
Счётчик |
Идентификатор |
BooksType |
Текстовый (50) |
Тип издания |
tblTypeOfPlace – соответствует сущности «Тип места хранения книги».
|
Таблица 3.3. Таблица tblTypeOfPlace |
|
Наименование поля |
Тип поля |
Описание |
ID_Place |
Счётчик |
Идентификатор |
Type |
Текстовый (50) |
Тип места хранения |
tblExtension – соответствует сущности «Расширения файла». |
||
|
Таблица 3.4. Таблица tblExtension |
|
Наименование поля |
Тип поля |
Описание |
ID_Extension |
Счётчик |
Идентификатор |
Extension |
Текстовый (5) |
Расширение |
Remark |
Текстовый (50) |
Комментарий |
tblLanguage – соответствует сущности «Язык».
26
|
Таблица 3.5. Таблица tblLanguage |
|
Наименование поля |
Тип поля |
Описание |
ID_Language |
Счётчик |
Идентификатор |
Language |
Текстовый (50) |
Язык |
tblWeb – соответствует сущности «WEB». |
|
|
|
|
Таблица 3.6. Таблица tblWeb |
Наименование поля |
Тип поля |
Описание |
Code |
Счётчик |
Идентификатор |
URL |
Гиперссылка |
URL |
Description |
MEMO |
Описание URL |
tblLicense – соответствует сущности «Тип лицензии». |
||
|
|
Таблица 3.7. Таблица tblLicense |
Наименование поля |
Тип поля |
Описание |
ID_License |
Счётчик |
Идентификатор |
Name |
Гиперссылка |
Наименование лицензии |
Annotation |
Текстовый (50) |
Аннотация |
tblBook – соответствует сущности «Описание книги». |
||
|
|
Таблица 3.8. Таблица tblBook |
Наименование поля |
Тип поля |
Описание |
ID_Book |
Счётчик |
Идентификатор |
Bibliographic |
Текстовый (255) |
Библиографическая ссылка |
Authors |
Текстовый (255) |
Авторы |
Title |
Текстовый (255) |
Заголовок издания |
City |
Текстовый (50) |
Место издания |
Publishers |
Текстовый (50) |
Издательство |
Annotation |
MEMO |
Аннотация |
tblBooks – соответствует сущности «Экземпляры книги». |
||
|
|
Таблица 3.9. Таблица tblBooks |
Наименование поля |
Тип поля |
Описание |
ID_Books |
Счётчик |
Идентификатор |
Book |
Числовой |
Книга |
BooksType |
Числовой |
Тип книги |
Place of storage |
Числовой |
Место хранения (носитель) |
Elaboration |
Текстовый (255) Уточнение места хранения |
|
Extension |
Числовой |
Расширение файла |
Source |
Текстовый (50) |
Источник |
27
Наименование поля |
Тип поля |
Описание |
Web |
Числовой |
Web |
Publication Date |
Числовой |
Год издания |
Language |
Числовой |
Язык |
tblManufacturer – соответствует сущности «Производитель ПО». |
||
|
Таблица 3.10. Таблица tblManufacturer |
|
Наименование поля |
Тип поля |
Описание |
ID_Manufacturer |
Числовой |
Идентификатор |
Name |
Текстовый (50) |
Наименование фирмы |
Web |
Числовой |
Web |
tblSoft – соответствует сущности «Программный продукт». |
||
|
|
Таблица 3.11. Таблица tblSoft |
Наименование поля |
Тип поля |
Описание |
ID_Soft |
Числовой |
Идентификатор |
Name |
Текстовый (255) |
Наименование продукта |
Manufacturer |
Числовой |
Производитель |
Annotation |
MEMO |
Описание |
tblVersion – соответствует сущности «Экземпляры ПО». |
||
|
Таблица 3.12. Таблица tblVersion |
|
Наименование поля |
Тип поля |
Описание |
ID_Version |
Числовой |
Идентификатор |
Soft |
Числовой |
ПО |
Version |
Текстовый (50) |
Версия ПО |
License |
Числовой |
Лицензия |
Operating system |
Текстовый (50) |
Операционная система |
Language |
Числовой |
Язык интерфейса |
Place of storage |
Числовой |
Место хранения (носитель) |
Elaboration |
Текстовый (255) Уточнение места хранения |
|
28
