Автоматизированная информационная система "Подписка"

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

п полейРазмер полейДопустимость неопределенных значенийID_рассылкиIntegerNOT NULLИмяCharacter20ФамилияCharacter20ДолжностьInteger

Таблица 3 - Список полей таблицы Редакции

Наименование атрибутовТип полейРазмер полейДопустимость неопределенных значенийID_редакцииIntegerNOT NULLНазвание редакцииCharacter20Наименования изданийCharacter20Способ отправленияCharacter20

ГЛАВА 3 РАЗРАБОТКА И ОПИСАНИЕ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ АИС ПОДПИСКА

 

.1 Выбор СУБД и средств разработки приложений

 

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

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

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

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

Для создания АИС Подписка использовались: СУБД FireBird, утилита IBExpert, а также интегрированная среда разработки Delphi.

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

В качестве преимуществ Firebird можно отметить многоверсионную архитектуру, обеспечивающую параллельную обработку оперативных и аналитических запросов (это возможно потому, что читающие пользователи не блокируют пишущих), компактность (дистрибутив 5Mb), высокую эффективность и мощную языковую поддержку для ранимых процедур и триггеров. Firebird используется в различных промышленных системах с 2001 г. Это коммерчески независимый проект C и C++ программистов, технических советников и разработчиков мультиплатформенных систем управления базами данных, основанный на исходном коде, выпущенном корпорацией Borland 25 июля 2000 года в виде свободной версии Interbase 6.0. Среди недостатков перечислятся отсутствие кеша результатов запросов, индексов fulltext для полнотекстового поиска.

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

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

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

События: Хранимые процедуры и триггеры могут генерировать события, на которые может подписаться клиент, открывая специально настроенный TCP/IP порт.

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

Базы данных только для чтения: позволяют распространять базы данных, к примеру, на CD-ROM. Особенно упрощает распространение данных их использование в комбинации с встраиваемой версией сервера Firebird (Firebird Embedded).

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

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