Рассмотрение исходной базы данных

Исходная база данных состоит из 22 таблиц, 21 процедуры, 20 триггеров, 8 генераторов. Структура данных описывает точку зрения пользователя на представление данных о «будущих» абитуриентах. Под «будущими» абитуриентами будем понимать учащихся средних образовательных учреждений или студентов высших учебных заведений, которые в будущем планируют соответственно поступить в высшие учебные заведения или получить еще одно высшее профессиональнее образование.

Основные таблицы, которые хранят данные о вариантах использования, в их атрибутах есть ссылки на таблицы-классификаторы и таблицы-связки, это:

· FST_L_PERSDATA_MESSAGE – информация об отправке сообщения.

· FST_MAILLOGIN – характеристики адреса электронной почты.

· FST_MESSAGE – информация о сообщение.

· FST_PERS_DATA – информация о «будущем» абитуриенте.

Таблицы-классификаторы:

· FST_FROM – откуда узнал о Московском Государственном Открытом Университете (МГОУ)

· STU_KL_FACULTY – хранит наименования факультетов.

· STU_KL_SPECIALIZATION - информация о специальностях МГОУ.

· X_EDUCATION – образование, полученное или получаемое «будущим» абитуриентом.

· X_SOURCE – источник (мероприятие, на котором был зарегистрирован «будущий» абитуриент.

· STU_KL_PAY_FORM – форма оплаты.

Таблица-связка:

· FST_FPROF – связывает «будущего» абитуриента со специальностью. Дает возможность выбора нескольких специальностей.

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

В настоящее время ЦПК работает с первой версией АИС «Будущий абитуриент», которая зарекомендовала себя как программное обеспечение, отвечающее всем поставленным требованиям. Но из-за изменений в системе образования, описанной выше, сотрудники деканатов Университета предложили изменить перечень вводимой информации при регистрации «будущих» абитуриентов и разработать отчет для зарегистрированного - «Карточка абитуриента».

Вторая версия программы АИС «Будущий абитуриент» должна уменьшить время, затраченное на регистрацию. Содержать модель для работы с отчетами, в том числе для формирования «Карточки абитуриента».

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

Необходимость разработки заключается в оптимизации кода с помощью использования представлений базы данных FireBird.

Необходимые эксплуатационные свойства разработки:

1. Регистрация «будущих» абитуриентов.

2. Просмотр зарегистрированных.

3. Отправка сообщений.

4. Формирование «Карточки абитуриента».

Исходная база данных – база данных FireBird. Ниже представлены характеристики данной системы управления базами данных (СУБД).

СУБД Firebird— компактная, кроссплатформенная, свободная система управления базами данных, база Firebird, работающая на GNU/Linux, Microsoft Windows и разнообразных Unix платформах.

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

Основные характеристики Firebird:

- Соответствие требованиям ACID:Firebird сделан специально, чтобы удовлетворять требованиям «атомарности, целостности, изоляции и надёжности» транзакций («Atomicity, Consistency, Isolation and Durability»).

- Версионная архитектура:Основная особенность Firebird — версионная архитектура, позволяющая серверу обрабатывать различные версии одной и той же записи в любое время (firebird time) таким образом, что каждая транзакция видит свою версию данных, не мешая соседним («читающие транзакции не блокируют пишущие, а пишущие не блокируют читающих»). Это позволяет использовать одновременно OLTP и OLAP запросы.

- Хранимые процедуры:Используя язык PSQL (процедурный язык SQL) Firebird, возможно создавать сложные хранимые процедуры для обработки данных полностью на стороне сервера. Для генерации отчётов особенно удобны хранимые процедуры с возможностью выборки, возвращающие данные в виде набора записей. Такие процедуры можно использовать в запросах точно так же как и обычные таблицы.

- События:Хранимые процедуры и триггеры могут генерировать события, на которые может подписаться клиент. После успешного завершения транзакции (COMMIT) он будет извещён о произошедших событиях и их количестве.

- Генераторы:Идея генераторов (последовательностей) делает возможной простую реализацию автоинкрементных полей, и не только их. Генераторы являются 64-битными хранимыми в базе данных счётчиками, работающими независимо от транзакций. Они могут быть использованы для различных целей, таких как генерация первичных ключей, управление длительными запросами в соседних транзакциях, и т. д.

- Базы данных только для чтения:позволяют распространять базы данных, к примеру, на CD-ROM.

- Полный контроль за транзакциями:Одно клиентское приложение может выполнять множество одновременных транзакций. В разных транзакциях могут быть использованы разные уровни изоляции. Протокол двухфазного подтверждения транзакций обеспечивает гарантированную устойчивость при работе с несколькими базами данных. Так же доступны оптимистическое блокирование данных и точки сохранения транзакций.

- Резервное копирование на лету:Для резервного копирования нет надобности останавливать сервер. Процесс резервного копирования сохраняет состояние базы данных на момент своего старта, не мешая при этом работе с базой.

- Триггеры:Для каждой таблицы возможно назначение нескольких триггеров, срабатывающих до или после вставки, обновления или удаления записей. Для триггеров используется язык PSQL, позволяя вносить начальные значения, проверять целостность данных, вызывать исключения, и т. д. В Firebird 1.5 появились «универсальные» триггеры, позволяющие в одном триггере обрабатывать вставки, обновления и удаления записей таблицы.

- Наборы символов:Firebird поддерживает множество международных наборов символов (включая Unicode) с множеством вариантов сортировки.

Средства доступа к серверу. Firebird поддерживает множество способов доступа, включая: собственные наборы компонент для C/C++, Delphi, классы для Ada, Firebird ODBC, JDBC (Jaybird), драйверы для Python, PHP, драйвер OLE DB, dbExpress, провайдер данных .NET и прямой доступ с использованием клиентской библиотеки сервера (fbclient.dll или GDS32.dll).

Наши рекомендации