Автор работы: Пользователь скрыл имя, 31 Октября 2013 в 19:10, курсовая работа
В настоящее время информационные системы, применяющие базы данных, представляют собой одну из важнейших областей современных компьютерных технологий. С этой сферой связана большая часть современного рынка программных продуктов. Среди общих тенденций в развитии таких систем выделяются процессы интеграции и стандартизации, затрагивающие структуры данных и способы их обработки и интерпретации, системное и прикладное программное обеспечение, средства взаимодействия компонентов баз данных и многое другое. Современные СУБД основаны на реляционной модели представления данных — в большой степени благодаря простоте и четкости ее концептуальных понятий и строгого математического обоснования.
В таблице «Больница» все поля зависят от поля «№». Следовательно, таблица «Больница» находится в третьей нормальной форме. Функциональная зависимость для таблицы «Больница» представлена на рисунке 3.7.
Рисунок 3.7 – Функциональные зависимости в таблице «Больница»
В таблице «Отделения» единственное неключевое поле «Число койко-мест» зависит от совокупности полей «№» и «Отделение». Следовательно, таблица «Отделения» находится в 3NF. Функциональная зависимость для таблицы «Отделения» приведена на рисунке 3.8.
Рисунок 3.8 – Функциональные зависимости в таблице «Отделения»
В таблице «Медработник» все поля зависят от поля «ФИО». Следовательно, таблица «Медработник» находится в третьей НФ.
Функциональная зависимость для таблицы «Медработник» приведена на рисунке 3.9.
Рисунок 3.9 – Функциональные зависимости в таблице «Медработник»
3.3.2 РМД в виде одной таблицы с описанием типов и размерностей полей.
Перед разработкой РМД в виде нескольких таблиц, разработаем РМД в виде одной таблицы и посчитаем объем занимаемого пространства. РМД в виде одной таблицы построим по следующему принципу: все атрибуты сущностей в схеме объект-отношение запишем в одну таблицу.
РМД в виде одной таблицы представлена на рисунке 3.10.
№ |
Адрес |
ФИО глав врача |
Тип |
Профиль |
Дата открытия |
Отде ление |
Число койко-мест |
ФИО медработника |
Долж ность |
Кате гория |
Специ ализация |
Начало работы |
Оклад |
N2 |
C25 |
C20 |
C20 |
C20 |
D8 |
C20 |
N3 |
C20 |
C20 |
C6 |
C20 |
D8 |
C6 |
Рисунок 3.10 РМД в виде одной таблицы
3.3.2 РМД в виде нескольких таблиц с описанием типов и размерностей полей.
Для представления базы данных была выбрана реляционная модель данных. Предметная область была разбита на отдельные связанные между собой таблицы.
В таблице «Больница» у поля «#КБ» тип счетчик, оно является первичным ключом. Поле «№» имеет числовой тип данных, поля «Адрес» и «ФИО глав врача» имеют текстовый тип данных, поле «Дата открытия» имеет тип дата. Поля «КП#» и «КТ#» являются внешними ключами и имеют числовой тип данных.
В таблице «Профиль больницы» первичным ключом является поле «#КП», имеющее тип счетчик. Поле «Название профиля» имеет текстовый тип данных.
В таблице «Тип больницы» первичным ключом является поле «#КТ», имеющее тип счетчик. Поле «Название типа» имеет текстовый тип данных.
В таблице «Отделения больниц» первичным ключом является поле «#КОБ», имеющее тип счетчик. Поле «Число койко-мест» имеет числовой тип данных. Поля «КБ#» и «КО#» являются внешними ключами и имеют числовой тип данных.
В таблице «Отделение» первичным ключом является поле «#КО», имеющее тип счетчик. Поле «Название отделения» имеет текстовый тип данных.
В таблице «Медработник» первичным ключом является поле «#КР», имеющее тип счетчик. Поле «ФИО» имеет тестовый тип данных, поле «Оклад» имеет числовой тип данных, поле «Начало работы» - тип дата. Поля «КД#», «КС#», «КК#» и «КОБ#» являются внешними ключами и имеют числовой тип данных.
В таблице «Должность» первичным ключом является поле «#КД», имеющее тип счетчик. Поле «Название должности» имеет текстовый тип данных.
В таблице «Специализация» первичным ключом является поле «#КС», имеющее тип счетчик. Поле «Название специализации» имеет текстовый тип данных.
В таблице «Категория» первичным ключом является поле «#КК», имеющее тип счетчик. Поле «Название категории» имеет текстовый тип данных.
Больница | ||||||
#КБ |
№ |
Адрес |
ФИО гл врача |
Дата открытия |
КП# |
КТ# |
Счетчик |
N2 |
С25 |
С20 |
D8 |
N1/2 |
N1/1 |
Профиль больницы | |
#КП |
Название профиля |
Счетчик |
C20 |
Отделения больниц | |||
#КОБ |
КО# |
КБ# |
Число койко-мест |
N2/3 |
N1/2 |
N3 |
Тип больницы | |
#КТ |
Название типа |
Счетчик |
C20 |
Отделение | |
#КО |
Название отделения |
Счетчик |
C20 |
Медработник | |||||||
#КР |
ФИО |
Оклад |
Начало работы |
КД# |
КС# |
КК# |
КОБ# |
Счетчик |
C20 |
C6 |
D8 |
N2/2 |
N2/2 |
N1/1 |
N2/3 |
Должность | |
#КД |
Название должности |
Счетчик |
C20 |
Специализация | |
#КС |
Название специализации |
Счетчик |
C20 |
Категория | |
#КК |
Название категории |
Счетчик |
C6 |
Рисунок 3.11 – РМД в виде нескольких таблиц
4 ВЫБОР СУБД
4.1 Обзор СУБД Microsoft Access
Microsoft Access - самая популярная на сегодняшний день настольная система управления базами данных. Корень успеха скорее всего заключается в прекрасной реализации продукта, рассчитанного как на начинающего, так и на квалифицированного пользователя.
СУБД Access 7.0 для работы с данными использует процессор баз данных Microsoft Jet 3.0, объекты доступа к данным и средства быстрого построения интерфейса - Конструктор форм. Для получения распечаток используются Конструкторы отчетов. Автоматизация рутинных операций может быть выполнена с помощью макрокоманд. На тот случай, когда не хватает функциональности визуальных средств, пользователи Access могут обратиться к созданию процедур и функций. При этом как в макрокомандах можно использовать вызовы функций, так и из кода процедур и функций можно выполнять макрокоманды.
Несмотря на свою ориентированность на конечного пользователя, в Access присутствует язык программирования Visual Basic for Application (VBA), который позволяет создавать массивы, свои типы данных, вызывать DLL-функции. Можно создавать базы данных с помощью кодирования, когда в этом появляется необходимость.
MS Access из всех рассматриваемых
средств разработки имеет,
Главное качество Access, которое привлекает к нему многих пользователей,- тесная интеграция с Microsoft Office.
Вся работа с базой данных осуществляется через контейнеры базы данных. Отсюда осуществляется доступ ко всем объектам, а именно: таблицам, запросам, формам, отчетам, макросам, модулям.
Встроенный SQL позволяет максимально гибко работать с данными и значительно ускоряет доступ к внешним данным.
Пользователем, малознакомым с понятиями реляционных баз данных, Access дает возможность разделять свои сложные по структуре таблицы на несколько, связанных по ключевым полям.
Также Access обладает лучшей встроенной системой защиты среди всех настольных приложений СУБД. Так как для Access нет компилятора, то необходимость защиты становится очень актуальной для разработчиков. Система защиты доступна только при открытой базе данных. Каждому пользователю можно предоставить индивидуальный пароль. Система защиты доступна как с помощью визуальных средств, так и программным путем.
4.2 Обзор СУБД MySQL
MySQL — свободная система управления базами данных. MySQL является собственностью компании Sun Microsystems, осуществляющей разработку и поддержку приложения. Распространяется под GNU General Public License и под собственной коммерческой лицензией, на выбор. Помимо этого компания MySQL AB разрабатывает функциональность по заказу лицензионных пользователей, именно благодаря такому заказу почти в самых ранних версиях появился механизм репликации.
MySQL является решением для малых и средних приложений. Входит в LAMP. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы.
Гибкость СУБД MySQL обеспечивается поддержкой большого количества типов таблиц: пользователи могут выбрать как таблицы типа MyISAM, поддерживающие полнотекстовый поиск, так и таблицы InnoDB, поддерживающие транзакции на уровне отдельных записей. Более того, СУБД MySQL поставляется со специальным типом таблиц EXAMPLE, демонстрирующим принципы создания новых типов таблиц. Благодаря открытой архитектуре и GPL-лицензированию, в СУБД MySQL постоянно появляются новые типы таблиц.
MySQL имеет API для языков Delphi, C, C++, Эйфель, Java, Лисп, Perl, PHP, Python, Ruby, Smalltalk и Tcl, библиотеки для языков платформы .NET, а также обеспечивает поддержку для ODBC посредством ODBC-драйвера MyODBC.
4.3 Обзор СУБД FoxPro
В России Microsoft Foxpro долгое время был самым популярным инструментом для создания баз данных. В настоящее время его несколько потеснили такие средства разработки как Delphi, MS Access и MS Visual Basic. Но и сейчас Foxpro остается самым популярным инструментом для разработки баз. На нем написано больше всего бухгалтерских, экономических и других приложений, связанных с расчетами и хранением информации.
Все дополнения, которые разрабатывает компания, нацелены на уменьшение количества кода, которое разработчик должен набирать, а также на предоставление дополнительного контроля над действиями пользователя.
Процессор данных FoxPro практически не имел себе равных по скорости. Он был настолько хорош, что приобретался FoxPro в надежде интегрировать технологии, используемые в FoxPro в других продуктах, таких как Access. Вышедшая в июне 1995 года версия 3.0 могла похвастаться такими возможностями как среда разработки клиент-серверных приложений, словарь данных и объектные расширения языка программирования. Версия 5.0 продолжила эту линию.
Visual FoxPro 5.0 значительно быстрее своего предшественника, поддерживает работу в распределенных средах за счет использования оторванных представлений и возможностей синхронизации и имеет расширенную среду разработки, интегрированную с Visual Source Safe, полномасштабный отладчик и новый контейнер баз данных, позволяющий совместную работу нескольких человек.
4.4 Обзор СУБД Oracle
До недавнего времени, из-за лицензионных ограничений, использование коммерческих баз данных, таких как Oracle, в средах разработки было затруднено.
С появлением версии Database 10g Express Edition, и для разработчиков и для небольших производственных сред появилась возможность использовать программное обеспечение абсолютно бесплатно. Оно бесплатно для скачивания, разработки с ее помощью, бесплатно для внедрения и распространения. Исполняемый код Oracle Database XE может работать с объемом до 4GB пользовательских данных (в дополнение к системным данным Oracle) и на любой системе, используя до 1GB оперативной памяти и один процессор.