Автор работы: Пользователь скрыл имя, 03 Января 2012 в 18:54, курсовая работа
В данном курсовом проекте была разработана база данных «Медицинское страхование» в СУБД Visual FoxPro 9.0. Программа, работающая с БД, позволяет вести учет клиентов ателье и дает возможность сформировать отчеты по различным категориям.
Выбор FoxPro обусловлен прежде всего разносторонностью этой СУБД, удобством как для разработчика приложений, так и для обычного пользователя. Наличие в ней языка программирования позволяет создавать сложные системы обработки данных, ориентированные на конкретные задачи и даже под конкретного пользователя. С другой стороны, в ней отражены и в разной мере используются многие современные технологии программирования: ActiveX, COM, SQL, OLE, API и многое другое.
Пользователями БД выступают служащие ателье, регистрирующие клиентов.
Целостность (от англ. integrity – нетронутость, неприкосновенность, сохранность, целостность) – понимается как правильность данных в любой момент времени. Но эта цель может быть достигнута лишь в определенных пределах: СУБД не может контролировать правильность каждого отдельного значения, вводимого в базу данных (хотя каждое значение можно проверить на правдоподобность).
Поддержание
целостности базы данных может рассматриваться
как защита данных от неверных изменений
или разрушений. Современные СУБД
имеют ряд средств для
Выделяют три группы правил целостности:
В
данном курсовом проекте были выставлены
условия целостности, представленные
на рис. 5.2.1.
Рис. 5.2.1
Построитель ссылочной
Для поддержания целостности введен запрет на удаление картежей, в которых имеется связанная информация в другом отношении. Также используется каскадное обновление данных.
В данном проекте описываются таблицы :
depart– polis–если изменяются отделы должны изменятся данные в полис (Cascade).Если удаляются данные отделы, то данные полис не должны удаляться (Restrict).
district – polis–если
изменяются данные район должны измениться
данные в полис(Cascade). Если удаляются данные
районы, то данные полис не должны удаляться
(Restrict).
dolg – polis–если изменются данные должность, то изменяются данные полис(Cascade). Если удаляются данные должность, то данные полис не должны удаляться (Restrict).
type_serv – polis – если изменяются уровень сервиса , то изменяются данные полис (Cascade). Если удаляются данные уровень сервиса, то данные в полисах не должны удаляться (Restrict).
Обновление записей
производится без ограничений.
Одним из наиболее эффективных и универсальных способов выборки данных из таблиц базы данных является использование запросов SQL В разработанной базе данных предусмотрены следующие запросы:
1. Простая выборка
SELECT *FROM dolg
SELECT *FROM polis
SELECT *FROM depart
SELECT *FROM disrict
SELECT *FROM
type_serv
2. Выборка вычисляемых значений
SELECT COUNT(*)
as count_, dolg_name FROM polis_view
3. Выборка с условием
SELECT * FROM
polis_view WHERE polis_id = ident
4. Выборка с упорядочением
SELECT * FROM polis_view order by dolg_name
5. Выборка с использованием оператора BETWEEN
SELECT * FROM polis_view WHERE
date_polis
between thisform.Text1.Value AND thisform.Text2.Value
6. Выборка с использованием шаблонов
SELECT *FROM polis_view WHERE disrict_name like “%”+str+”%”
SELECT *FROM
polis_view WHERE dolg_name like “%”+str+”%”
7. Выборка из связанных таблиц
Select polis.*, dolg.dolg_name
FROM dolg
INNER JOIN polis
ON Dolg.dolg_id = Polis.dolg_id
8. Использование группировки данных при организации запросов
SELECT COUNT(*) as count_, type_serv_name FROM polis_view
GROUP BY type_serv_name
Запросы на языке реляционной алгебры
Обозначения: П – проекция; d – селекция.
1. Безусловная выборка значений
П(1,2,3) (dolg)
П(1,2,3,4,5,6,7,8) (polis)
П(1,2) (depart)
П(1,2) (disrict)
П(1,2)
(type_serv)
2. Выборка вычисляемых значений
Пcount(*),disrict_name
(dgroup
by disrict_name) (polis_view)
3. Выборка с условием
П
polis_view.* (dpolis_id = ident)(polis_view)
4. Выборка с упорядочением
Пpolis_view.*(dOrder
By dolg_name)( polis_view)
5. Выборка с использованием оператора BETWEEN
П(1,2,3,4,5,6,7,8)
(ddate_polis
Between text1.Value And Text2.value
)( polis_view)
6. Выборка с использованием шаблонов
П (1,2,3,4,5,6,7,8)
(ddisrict_name
like «%» +str+«%») (polis_view)
7. Выборка из связанных таблиц
Пpolis.*,
dolg.date_polis (dpolis.dolg_id=dolg.dolg_id)
(dolg, polis)
8. Использование группировки данных при организации запросов
Пcount(*),type_serv_name (dgroup by type_serv_name (polis_view)
Защита данных от несанкционированного доступа имеет большое значение для информационно системы, применяемой на предприятии. В разработанной базе данных «Медицинское страхование» для предотвращения несанкционированного доступа к данным применяется авторизация. Предусмотрены 2 роли: «Администратор» и «Гость». У «Администратора» есть все права для редактирования данных, а «Гость» может только просматривать данные. В случае неправильного ввода пароля (Приложение Б. Рис. 2.) доступ к программе будет ограничен.
Минимальные системные требования для работы с БД:
При несоблюдении минимальных требований нормальная работа базы данных не гарантируется.
Программа не требует инсталляции: необходимо скопировать на жесткий диск папку «Медицинское страхование» и из нее запустить файл prog.exe. На экране появится форма ввода пароля. Для выхода из программы необходимо закрыть окно.
Работа
программы основана на диалоге с
пользователем через
Через эти формы можно просмотреть информацию обо всех сотрудниках, полисах и т.д., добавить новые данные, изменить информацию, найти необходимую информацию.
Форма «Отчеты» формы позволяет получить необходимую информацию в структурированном виде и вывести ее на печать.
Реляционная модель данных в настоящее время приобрела наибольшую популярность и практически все современные СУБД ориентированы именно на такое представление данных.
В данном проекте была создана реляционная база данных «Медицинское страхование», разработанная с помощью СУБД Microsoft Visual FoxPro 9.0.
Так как интеграция информационных систем во все сферы жизни увеличивается с каждым днем, то актуально становится разработка подобных баз данных. При этом разработчик должен учитывать то, что наиболее простые БД могут быть подвержены избыточности, но при этом нельзя и увлекаться делением БД на много составных таблиц. Также современные средства дружественного интерфейса позволяют разработать интуитивно понятные приложения, что является одним из основных требований заказчика. При создании БД необходимо принять во внимание область, для которой разрабатывается база данных.
1.
Дроздова В.И., Крахоткина Е.В., Федоров
С.О. Базы данных. Методические
указания к лабораторным
2.
Дроздова В. И., Крахоткина Е.В.
Методические указания к
3. Каратыгин С.А., Тихонов А.Ф., Тихонова Л.Н. Visual FoxPro 6.0 // М.: Бином, 1999 – 784 с.
4. Баженова И.Ю. Visual Fox Pro 5.0//М.: Диалог МИФИ, 1997 – 320 с.
5. Ханcен Г., Ханcен Д. Базы данных. Разработка и управление / М.: Бином, 1999 – 704 с.
6. Глушаков С.В., Ломотько Д.В. Базы данных. Учебный курс // Харьков: Фолио; Ростов н/Д: Феникс; Киев: Абрис, 2000. – 504 с.
7. Клепинин В.Б., Агафонова Т.П./Visual FoxPro 9.0 – Спб.:БХВ-Петербург, 2007.-1216с.
8. Карпова Т.С. Базы данных. Модели, разработка, реализация/СПб.: Питер,2002. – 304 с.
9. Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. Базы данных. Учебник для ВУЗов /под ред. проф. А.Д. Хомоненко // СПб.:КОРОНАпринт, 2000. – 416 с.
10. Корнеев В.В. и др. Базы данных. Интеллектуальная обработка информации // М.:Нолидж, 2000. – 352 с.
Рис. 1. Схема
базы данных
Экранные формы приложения
«Медицинское
страхование»
Форма.
1. Главное окно программы
Форма.
2. Вход в систему
Форма.
3. Районы
Форма.
4. Сотрудники
Форма.
5. Отчеты
Форма. 3. Список выданных полисов по районам
Форма. 3.Список выданных полисов по страховщикам
Листинг программы
Форма «Вход в систему», кнопка «ОК»
if thisform.Text1.Value = ""
do form main_form
else
messagebox("Пароль
введен неверно!",0+48+0,"
thisform.Release
endif
Форма «Вход в систему», кнопка «Отмена»
thisform.Release