Разработка приложения баз данных (Воздушные перевозки)
![](/assets/img/loading.gif)
![](/assets/img/loading.gif)
Задание ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 2
Содержание ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 3
Введение ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 4
1 Разработка информационной модели проектирования базы данных ... ... ... ... 6
1.1 Инфологическая модель предметной области ... ... ... ... ... ... ... ... ... ... 6
1.2 Даталогическая модель предметной области ... ... ... ... ... ... ... ... ... ... .. 8
2 Разработка прикладной программы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 10
2.1 Разработка функциональной структуры приложения ... ... ... ... ... ... ... 10
2.2 Разработка защиты базы данных ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 11
2.3 Разработка приложения базы данных ... ... ... ... ... ... ... ... ... ... ... ... ... .. 13
3 Инструкции ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 19
3.1 Инструкция для пользователя ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 19
3.2 Инструкция для сопровождающего программиста ... ... ... ... ... ... ... ... 28
Заключение ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 30
Список литературы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 31
Приложение А ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 32
Приложение Б ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 91
Содержание ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 3
Введение ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 4
1 Разработка информационной модели проектирования базы данных ... ... ... ... 6
1.1 Инфологическая модель предметной области ... ... ... ... ... ... ... ... ... ... 6
1.2 Даталогическая модель предметной области ... ... ... ... ... ... ... ... ... ... .. 8
2 Разработка прикладной программы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 10
2.1 Разработка функциональной структуры приложения ... ... ... ... ... ... ... 10
2.2 Разработка защиты базы данных ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 11
2.3 Разработка приложения базы данных ... ... ... ... ... ... ... ... ... ... ... ... ... .. 13
3 Инструкции ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .. 19
3.1 Инструкция для пользователя ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 19
3.2 Инструкция для сопровождающего программиста ... ... ... ... ... ... ... ... 28
Заключение ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 30
Список литературы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 31
Приложение А ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 32
Приложение Б ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . 91
Базой данных (БД) называют специальным образом организованные данные, хранимые в вычислительной системе (ВС). БД создается для определенной предметной области (банк, библиотека, магазин, биржа и т.д.). Сегодня БД можно встретить практически везде. Их используют в медицине, на транспорте, в правоохранительных органах, в городских справочных службах, на производстве и в учебных заведениях. БД могут содержать в себе различную информацию, получить которую можно в считанные секунды, нажав для этого всего лишь несколько клавиш на клавиатуре компьютера.
Для создания и использования БД служат системы управления базами данных (СУБД), которые занимают особое место в мире программного обеспечения и нашей повседневной жизни. СУБД обеспечивают реализацию новых концепций в организации информационных служб через создание информационных систем на основе технологии БД. В настоящее время широко применяются муниципальные, банковские, биржевые информационные системы, информационные системы оптовой и розничной торговли, торговых домов, служб управления трудом и занятостью, справочной и аналитико–прогнозной котировочной информации и др. как правило, работа этих систем осуществляется в локальных вычислительных сетях различной архитектуры или их объединениях, получивших название корпоративных сетей, дальнейшая интеграция которых возможна с помощью глобальной сети Интернет.
Подавляющее большинство современных СБД представляют собой системы реляционного типа, т.е. использующие реляционную модель данных. Данные в реляционных БД хранятся в таблицах – отношениях (relation). Реляционные СБД (РСБД) – это компьютеризованные системы хранения записей в табличном виде. Под БД в различных РСБД понимается табличное хранение данных, но название «база данных» может объединять не только таблицы, но и производные этих таблиц ( в виде отчетов, форм, виртуальных таблиц – представлений), формы запросов, программные модули и т.д. СУБД,
Для создания и использования БД служат системы управления базами данных (СУБД), которые занимают особое место в мире программного обеспечения и нашей повседневной жизни. СУБД обеспечивают реализацию новых концепций в организации информационных служб через создание информационных систем на основе технологии БД. В настоящее время широко применяются муниципальные, банковские, биржевые информационные системы, информационные системы оптовой и розничной торговли, торговых домов, служб управления трудом и занятостью, справочной и аналитико–прогнозной котировочной информации и др. как правило, работа этих систем осуществляется в локальных вычислительных сетях различной архитектуры или их объединениях, получивших название корпоративных сетей, дальнейшая интеграция которых возможна с помощью глобальной сети Интернет.
Подавляющее большинство современных СБД представляют собой системы реляционного типа, т.е. использующие реляционную модель данных. Данные в реляционных БД хранятся в таблицах – отношениях (relation). Реляционные СБД (РСБД) – это компьютеризованные системы хранения записей в табличном виде. Под БД в различных РСБД понимается табличное хранение данных, но название «база данных» может объединять не только таблицы, но и производные этих таблиц ( в виде отчетов, форм, виртуальных таблиц – представлений), формы запросов, программные модули и т.д. СУБД,
1. Айтхожаева Е. Ж. Системы баз данных, учебник, 2001
2. Дейт К. Дж. Введение в системы баз данных, 7-е издание – М.: Издательский дом «Вильямс», 2002
3. Каратыгин С. А., Тихонов А. Ф., Тихонова Л. Н. Visual FoxPro 7. – М.: Бином-Пресс, 2003
2. Дейт К. Дж. Введение в системы баз данных, 7-е издание – М.: Издательский дом «Вильямс», 2002
3. Каратыгин С. А., Тихонов А. Ф., Тихонова Л. Н. Visual FoxPro 7. – М.: Бином-Пресс, 2003
Дисциплина: Информатика, Программирование, Базы данных
Тип работы: Курсовая работа
Бесплатно: Антиплагиат
Объем: 46 страниц
В избранное:
Тип работы: Курсовая работа
Бесплатно: Антиплагиат
Объем: 46 страниц
В избранное:
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РЕСПУБЛИКИ КАЗАХСТАН
Казахский национальный технический университет имени К. И. Сатпаева
Институт информационных технологий
Кафедра Вычислительной Техники
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
к курсовой работе
по дисциплине Базы данных
Тема: Разработка приложения баз данных (Воздушные перевозки)
Руководитель
преподаватель кафедры
ВТ
И Син Фу Е.В.
______________________2005г.
Нормоконтролер
________________________
______________________2005г.
Студент Бралимова А.А.
Специальность ОТЗ (3703)
Группа ОТЗ-02-2р.
______________________2005г.
Алматы 2005
ЗАДАНИЕ
Вариант задания для курсовой работы по дисциплине Базы данных: 3.
Разработать базу данных и реализовать приложение БД с использованием
методов защиты БД на основе Visual FoxPro для предметной области воздушные
перевозки.
Задание выдал преподаватель:
И Син Фу Е.В.
______________________2005г.
__________________ подпись
Задание принял:
Студент Бралимова А.А.
Специальность ОТЗ (3703)
Группа ОТЗ-02-2р.
______________________ 2005г.
__________________ подпись
СОДЕРЖАНИЕ
Задание ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..2
... ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... .
Содержание ... ... ... ... ... ... ... ... ... ... ... ... ... ..3
... ... ... ... ... ... ... ... .. ... ... ... ... ... ... .
Введение ... ... ... ... ... ... .. ... ... ... ... ... ... ... ..4
... ... ... ... ... ... ... ... .. ... ... ... ... ... ... ...
1 Разработка информационной модели проектирования базы 6
данных ... ... ... ...
1.1 Инфологическая модель предметной 6
области ... ... ... ... ... ... ... ... ... ... .
1.2 Даталогическая модель предметной 8
области ... ... ... ... ... ... ... ... ... ... ...
2 Разработка прикладной 10
программы ... ... ... ... ... ... . ... ... ... ... ... ... ... ..
... ... ... ...
2.1 Разработка функциональной структуры 10
приложения ... ... ... ... ... ... ...
2.2 Разработка защиты базы 11
данных ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
...
2.3 Разработка приложения базы 13
данных ... ... ... ... ... ... ... ... ... ... ... ... ... ..
3 19
Инструкции ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ... .. ... ... ... ... ... ..
3.1 Инструкция для 19
пользователя ... ... ... ... ... .. ... ... ... ... ... ... ... ..
... ... ... ...
3.2 Инструкция для сопровождающего 28
программиста ... ... ... ... ... .. ... ... ..
Заключение ... ... ... ... ... ... ... ... ... ... ... ... ... ..30
... ... ... ... ... ... ... ... .. ... ... ... ... ... ... .
Список 31
литературы ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ... .. ... ... ...
Приложение 32
А ... ... ... ... ... ... ... ... . ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ... .. ... ... ...
Приложение 91
Б ... ... ... ... ... ... ... ... . ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ... .. ... ... ...
ВВЕДЕНИЕ
Базой данных (БД) называют специальным образом организованные данные,
хранимые в вычислительной системе (ВС). БД создается для определенной
предметной области (банк, библиотека, магазин, биржа и т.д.). Сегодня БД
можно встретить практически везде. Их используют в медицине, на транспорте,
в правоохранительных органах, в городских справочных службах, на
производстве и в учебных заведениях. БД могут содержать в себе различную
информацию, получить которую можно в считанные секунды, нажав для этого
всего лишь несколько клавиш на клавиатуре компьютера.
Для создания и использования БД служат системы управления базами данных
(СУБД), которые занимают особое место в мире программного обеспечения и
нашей повседневной жизни. СУБД обеспечивают реализацию новых концепций в
организации информационных служб через создание информационных систем на
основе технологии БД. В настоящее время широко применяются муниципальные,
банковские, биржевые информационные системы, информационные системы оптовой
и розничной торговли, торговых домов, служб управления трудом и занятостью,
справочной и аналитико–прогнозной котировочной информации и др. как
правило, работа этих систем осуществляется в локальных вычислительных сетях
различной архитектуры или их объединениях, получивших название
корпоративных сетей, дальнейшая интеграция которых возможна с помощью
глобальной сети Интернет.
Подавляющее большинство современных СБД представляют собой системы
реляционного типа, т.е. использующие реляционную модель данных. Данные в
реляционных БД хранятся в таблицах – отношениях (relation). Реляционные СБД
(РСБД) – это компьютеризованные системы хранения записей в табличном виде.
Под БД в различных РСБД понимается табличное хранение данных, но название
база данных может объединять не только таблицы, но и производные этих
таблиц ( в виде отчетов, форм, виртуальных таблиц – представлений), формы
запросов, программные модули и т.д. СУБД, поддерживающие реляционную модель
данных, называются реляционными СУБД (РСУБД). Стандартным языком
взаимодействия с реляционными БД является язык запросов SQL, который
реализуется в РСУБД на основе операций реляционной алгебры и реляционного
исчисления.
Основной целью курсовой работы является приобретение практических
навыков по разработке баз данных, программной реализации приложений БД и
методов защиты БД для определенной предметной области на основе конкретной
СУБД.
В курсовой работе должна быть разработана база данных и реализовано
приложение БД с использованием методов защиты БД в среде конкретной СУБД
для определенной предметной области (ПО). Для выполнения этой задачи
необходимо выполнить: анализ ПО; определить функции, подлежащие реализации
в системе; выделить параметры ПО, необходимые для выполнения
индивидуального задания; выбрать метод защиты БД. На основе проведенного
анализа осуществляется постановка задачи, разработка информационной и
даталогической моделей ПО, алгоритмов решения задачи, их реализация.
Курсовая работа состоит из трех разделов: разработки информационной
модели и проектирования базы данных; разработки приложения БД с
использованием методов и средств защиты; разработки инструкций для работы
с БД.
1 РАЗРАБОТКА ИНФОРМАЦИОННОЙ МОДЕЛИ ПРОЕКТИРОВАНИЯ БАЗЫ ДАННЫХ
1. Инфологическая модель предметной области
Инфологическая модель – это описание предметной области без ориентации
на используемые аппаратные и программные средства.
Цель инфологического моделирования – обеспечение наиболее естественных
для человека способов сбора и представления той информации, которую
предполагается хранить в создаваемой базе данных. Поэтому инфологическую
модель данных строят по аналогии с естественным языком (последний не может
быть использован в чистом виде из-за сложности компьютерной обработки
текстов и неоднозначности любого естественного языка). Основными
конструктивными элементами инфологических моделей являются объекты, связи
между ними и их атрибуты. Атрибуты – это существенные свойства объекта,
интересующие пользователя.
Выполняя анализ предметной области воздушные перевозки, определяем
объекты, которые должны интересовать конечного пользователя. Можно выделить
два объекта:
Объект1 – Расписание рейсов.
Объект2 – Пассажиры.
Рассмотрим связь между данными объектами (рисунок 1). Один пассажир
может лететь только одним рейсом, что на рисунке показано одной стрелкой, в
то время как, на одном и том же рейсе могут лететь много пассажиров, что
на рисунке показано двойной стрелкой. Следовательно между данными объектами
реализуется отношение 1: М. Связь между таблицами осуществляется по полю:
Номер рейса.
Рисунок 1 - Тип связей между объектами Врачи и Пациенты.
Реляционная модель, не содержит связей типа многие-ко-многим,
необходимо ввести промежуточное отношение для промежуточного объекта,
которое будет содержать идентификаторы связываемых объектов. В нашем случае
таким новым объектом для связи служит объект Прием, идентификаторами
которого являются код врача, номер карты пациента, дата приема и т. д.
Каждый пациент может прийти на прием к нескольким врачам, поэтому связь
между объектами Пациенты и Прием будет один-ко-многим (см. рис. 2).
Каждый врач принимает множество пациентов, поэтому связь между объектами
Врачи и Прием также будет один-ко-многим (см. рис. 2).
Рисунок 2 - Типы связей между объектами Врачи, Пациенты и Прием.
В реляционной базе данных в качестве объектов рассматриваются
отношения, которые можно представить в виде таблиц. Таблицы между собой
связываются посредством общих полей, т.е. одинаковых по форматам и, как
правило, по названию, имеющихся в обеих таблицах. Рассмотрим, какие общие
поля надо ввести в таблицы для обеспечения связности данных. В таблицах
Врачи и Прием таким полем будет Код врача, в таблицах Пациенты и Прием -
Номер карты.
В соответствии с этим информационная структура объектов представлена в
таблице 1.
Таблица 1 – Информационная структура объектов
Объект Атрибуты Значения
Врачи код врача 1
фамилия, имя, отчество Казакова Любовь
Ярославовна
специалист кардиолог
адрес 10 микрорайон, дом 5, кв.
81
домашний телефон 382201
Пациенты номер карты 1001
фамилия, имя, отчество Петров Виталий Олегович
домашний телефон 210375
пол мужской
дата рождения 08.12.1969
адрес Дежнева, 26, кв. 7
прикрепленный житель нет
№ страхового полиса 11203
вид страхования добровольное
взят на диспансерное да
наблюдение
Продолжение таблицы 1
Прием номер карты 1001
код врача 1
повод обращения диспансеризация
кем направлен скорой помощью
дата приема 01.13.2004
Первичный ключ – это атрибут (совокупность атрибутов), однозначно
идентифицирующий конкретную запись. Таким ключем для объекта Врачи является
атрибут Код врача, для объекта Пациенты – Номер карты, а для объекта
Прием - совокупность атрибутов Код врача+ Номер карты+Дата приема.
Внешний ключ – это атрибут (совокупность атрибутов), не являющихся
первичным ключом для данного объекта, но который является первичным ключом
для логически связанного объекта. Таким ключем для объекта Прием является
атрибут Код врача, а так же Номер карты.
1.2 Даталогическая модель предметной области
Даталогическая модель представляет собой отображение логических связей
между элементами данных безотносительно к их содержанию и среде хранения.
При этом даталогическая модель разрабатывается с учетом конкретной
реализации СУБД и с учетом специфики конкретной предметной области на
основе ее инфологической модели.
В реляционной базе данных все данные хранятся в виде таблиц, при этом
все операции над базой данных сводятся к манипуляции с таблицами. В таблице
2 показана структура таблиц для предметной области поликлиника.
Таблица 2 – Структура таблиц мед_карта, врачи и прием1
Таблица Название Описание Тип поля Длина
поля поля
мед_карта номеркарты номер карты Numeric 10
фио фамилия, имя, отчество Character40
домтелефон домашний телефон Numeric 6
пол пол Character1
дата_рожд дата рождения Date 8
адрес адрес Character40
Продолжение таблицы 2
мед_карта прикреп_ж прикрепленный житель Logical 1
номерполис № страхового полиса Numeric 10
видстрахов вид страхования Character12
диспансер взят на диспансерное Logical 1
наблюдение
врачи код_врача код врача Numeric 6
фио фамилия, имя, отчество Character40
наим_проф специалист Character20
адрес адрес Character30
телефон домашний телефон Numeric 6
прием1 номеркарты номер карты Numeric 10
код_врача код врача Numeric 6
поводобращ повод обращения Character20
кемнаправл кем направлен Character20
датаприема дата приема Date 8
Таблицы состоят из строк и столбцов и имеют уникальные имена в базе
данных. База данных содержит множество таблиц, связь между которыми
устанавливается с помощью совпадающих полей. В каждой из таблиц содержится
информация о каких-либо объектах одного типа.
1. РАЗРАБОТКА ПРИКЛАДНОЙ ПРОГРАММЫ
2.1 Разработка функциональной структуры приложения
В этом разделе подробно описывается функциональные возможности
создаваемой базы данных, в частности, основные блоки создаваемого
приложения базы данных (см. рис. 3).
Определим функциональные задачи, решаемые нашим приложением.
В каждой поликлинике имеется регистратура. Она содержит картотеку на
каждого пациента данной поликлиники (медицинская карточка больного), и
данные о сотрудниках поликлиники. Следовательно пользователь должен иметь
возможность изменять данные пациента или врача (например, человек сменил
место жительства, поменял фамилию и т. д.), удалять данные о пациенте
(например, пациент перешел в другую поликлинику) или о враче (сотрудник
уволился), добавлять данные (например, в данной поликлинике
зарегистрировался новый пациент или на работу приняли нового сотрудника) и
осуществлять поиск данных о пациенте или враче. Так же в поликлинике
ведутся записи о каждом приеме, поэтому пользователь должен иметь
возможности ввода, удаления и редактирования данных о приеме.
Для решения вышеперечисленных задач используются формы, являющиеся
основой пользовательского интерфейса..
Для корректной работы нужно определить тип механизма поддержки
ссылочной целостности. Ссылочное ограничение целостноти – это поддержка
непротиворечивости данных в связанных между собой таблицах, например, код
врача в таблице врачи должен соответствовать коду врача в таблице прием1.
Поэтому на удаление ставится Restrict (недопускает удаление строк с
первичным ключом, если в дочерней таблице есть зависимые записи, связанные
через внешний ключ), а на изменение – Cascade (при изменении первичного
ключа в родительской таблице автоматически изменяются значения внешнего
ключа в дочерней таблице).
В поликлинике ведется статистика по врачам, пациентам и приему
больных. Нужно проанализировать те вопросы, ответы на которые чаще всего
нужны пользователю и по ним уже составить запросы, например, выдать
фамилию, адрес и телефон пациентов пенсионного возраста, находящихся на
диспансерном наблюдении.
Для обхода пациентом врачей ему требуется карточка, которую он получает
в регистратуре. С помощью отчета, выводимого на принтер, и создается
данная карточка (см. приложение Б). Так же вывести на принтер можно и
отчет о количестве пациентов, прошедших осмотр в указанный месяц у каждого
врача.
Рисунок 3 – Функциональная структура приложения
2.2 Разработка защиты базы данных
Термин защита (security) относится к защищенности данных от
несанкцианированного доступа, изменения или умышленного разрушения. Под
защитой данных подразумевается предотвращение доступа к ним со стороны
несанкционированных пользователей.
Разработка методов и средств защиты базы данных включает в себя:
▪ вход в систему по паролю;
▪ хранение пароля в зашифрованном виде;
▪ хранение данных в зашифрованном виде.
Вход в систему осуществляется по паролю и логину. Логин и пароль
хранятся в файле priem.dbf в зашифрованном виде.
Алгоритм входа по паролю:
после того, как пользователь указал свой логин и пароль данный файл
расшифровывается;
идет поиск логина, если он не найден, то содержание файла зашифровывается,
в противном случае идет сравнение пароля, соответствующего в таблице
указанному логину, и введенного пароля;
содержание файла зашифровывается;
при совпадении значений пользователь получает доступ к системе.
Вход по паролю подразумевает, что предполагаемый нелегальный
пользователь пытается незаконно проникнуть в базу данных с помощью обычных
средств доступа, имеющихся в системе. Но если он пытается проникнуть в базу
данных , минуя систему, то есть физически перемещая часть базы данных, то
наиболее эффективным методом борьбы с такими угрозами является шифрование
данных, то есть хранение в зашифрованном виде.
Исходные (незашифрованные данные) данные называются открытым текстом.
Открытый текст шифруется с помощью специального алгоритма шифрования. В
качестве входных данных для алгоритма выступает открытый текст, а в
качестве выходных – зашифрованная форма открытого текста, которая
называется шифрованным текстом. Именно зашифрованный текст хранится в базе
данных.
Дешифрование файлов осуществляется только после того, как пользователь
получит доступ к системе (см. рис. 4). После завершения работы пользователя
с базой данных идет шифрование содержимого файлов .dbf (для каждой
таблицы существует свой ключ шифрования). Программа шифрования написана на
языке программирования Assembler.
Рисунок 4 – Модель шифрования
2.3 Разработка приложения базы данных
Проект является основным средством объединения отдельных элементов
приложения Visual FoxPro. Он выполняет следующие функции:
▪ Запоминает расположение каждого включенного в него элемента, что
создает удобства при объединении баз данных, программ, экранных форм,
отчетов и упрощает управление приложением.
▪ Осуществляет поиск и собирает файлы, на которые есть ссылки в
проекте.
▪ Отслеживает текущие версии элементов. В случае необходимости
перекомпилирует программы, обновляет экранные формы, меню и т. д.
Создав проект и определив элементы, которые должны в него войти, вы
можете использовать его для сборки мсполняемого файла (EXE).
В Visual FoxPro можно установить постоянные отношения между таблицами в
базе данных, которые будут поддерживаться при создании форм, отчетов и
запросов. При определении отношений одна из таблиц является родительской,
а другая - дочерней. Для родительской таблицы должен быть определен
первичный ключ, а для дочерней – индекс для связи с родительской таблицей.
При задании отношений между таблицами мед_карта и прием1, врачи и прием1,
для таблиц мед_карта, врачи определены первичные ключи (см. рис. 5), а
таблица прием1 содержит индексы , не являющиеся уникальными.
Рисунок 5 - Отображение связей между таблицами
В Visual FoxPro существует два формата отображения содержимого таблицы
– в виде таблицы и в виде формы. Формат отображения в виде формы называется
экранной формой. Формы являются мощным и гибким средством представления
информации.
В Visual FoxPro для создания форм используется:
▪ Мастер форм (Form Wizard), создающий форму для одной или двух
связанных таблиц. При этом можно задать отображаемые в форме поля,
стиль их отображения и тип кнопок управления;
▪ Построитель (Builder), позволяющий создать объекты формы с
определенными свойствами;
▪ Конструктор форм (Form Designer), с помощью которого разрабатываются
собственные формы с заданными свойствами для просмотра, ввода и
редактирования данных.
Любая форма в Visual FoxPro состоит из объектов, которые имеют
характерные для них свойства. Для каждого объекта можно определить
действия, выполняемые при наступлении определенных событий. Процесс
создания формы состоит в размещении объектов в форме и определении для них
свойств, связанных с ними событий и выполняемых действий. Для размещения
объектов в форме используется панель инструментов Form Controls. В данной
курсовой работе были использованы следующие объекты:
▪ Label (текстовый объект)
▪ Text Box (поле ввода)
▪ Command Button (кнопка)
▪ Option Group (переключатель)
▪ Check Box (флахок)
▪ Grid (таблица)
▪ Combo Box (поле ввода со списком)
▪ Line (линия)
▪ Page Frame (страница)
В процессе создания формы можно объекты перемещать, удалять изменять их
размеры, а также изменять их свойства. Процесс по созданию формы может
включать в себя все или часть из приведенных ниже процедур:
▪ настройка формы;
▪ создание окружения;
▪ размещение текста;
▪ размещение полей;
▪ создание управляющих кнопок;
▪ размещение линий, прямоугольников и рисунков;
▪ установка цвета объектов формы;
▪ удаление объектов формы;
▪ перемещение объектов формы, а также перемещение областей, которые
могут содержать несколько объектов;
▪ сохранение формы.
Каждая форма имеет свойства, определяющие расположение ее в основном
окне Visual FoxPro, размер, заголовок, шрифт, цвет экрана и некоторые
другие параметры.
Размер формы и ее положение задаются относительно основного окна Visual
FoxPro. Установить эти параметры можно следующими способами: присвоить
значения свойствам Height, Width, Left и Top, определенную высоту, ширину
формы и ее положение относительно левого угла основного окна Visual FoxPro,
соответственно, или придать форме нужный размер с помощью курсорамыши и
перенести форму в место предпологаемого расположения.
Для задания заголовка, распологающегося в верхней части формы,
предназначено свойство Caption.
Стиль обрамления окна формы задается с помощью свойства BorderStyle.
Свойство BackColor позволяет выбрать цвет фона, а свойство Picture –
подходящий рисунок.
Свойство WindowsState определяет вид формы при ее вызове.
Свойства FontName, FontSize, FontBold, FontOutline, FontItalic,
FontShadow, FontStrikethru, FontUnderline, FontCondense, FontExtend задают
наименования шрифта фориы, его размер и начертание.
При использовании формы для ввода и отображения данных, содержащихся в
таблицах базы данных в Visual FoxPro устанавливается среда окружения (то
есть таблиц, используемых в форме, и связей между ними) средствами
конструктора форм. Для этой цели предназначено окно диалога Data
Environment.
Размещение текста в форме осуществляется с помощью объекта Label,
который находится на панели инструментов Form Controls. Под текстом
понимается любая текстовая информация: заголовки, наименования полей и
поясняющая информация. Ниже перечислены основные свойства объекта Label:
▪ BackStyle, определяет стиль фона текста, например, чтобы фон текста
не отличался от фона формы, нужно установить для данного свойства
значение Transparent;
▪ Caption, данным свойством задается текстовая информация;
▪ FontName, определяет тип шривта;
▪ FontSize, данное свойство задает размер шрифта;
▪ ForeColor, установленное значение данного свойства задает цвет
текстовой информации.
Наиболее простым типом поля является поле ввода – объект Text Box.
Свойство ControlSource указывает поле таблицы, которое необходимо
добавить в форму.
Для задания стиля и цвета рамки поля используются свойства BorderStyle
и BorderColor, а для определения цвета фона неактивного поля – свойство
DisabledBackColor.
Свойства FontName и FontSize определяют вид и размер шрифта, а
ForeColor – цвет информации в поле ввода.
Если информация из поля ввода должна быть доступна только для чтения,
необходимо установить значение свойства ReadOnly равным True (см.
приложение А).
Для определения значения поля по умолчанию задается свойство Value. (0
– числовое поле, {} – поле типа даты).
Для работы с таблицей наиболее удобным средством являются кнопки. Для
создания кнопок используется объект Command Button.
На кнопке можно расположить текст или графическое изображение. При
расположении текстовой информации скорректируйте свойство Caption,
разместив в поле ввода значения текст, который будет отображаться на
кнопке. Для расположения на кнопке графического изображения используется
свойство Picture.
Для определения команд, которые будут выполняться при нажатии кнопки
служит метод Click, который автоматически вызывается при нажатии на кнопку
мыши.
Для индикации состояния, которое может иметь только одно из двух
допустимых значений, используются флажки (объекты типа Check Box). Они
могут использоваться по одному или группами. При установке флажка значение
будет соответствовать 1, а при снятии флажка – значению 0.
Для связывания флажка с полем таблицы нужно скорректировать свойство
ControlSource, задав в качестве значения свойства поле таблицы.
Свойство Caption определяет заголовок, отображаемый справа от флажка в
форме.
Свойства ForeColor, BackStyle, FontName определяют цвет, фон и шрифт.
Объекты типа Option Group (переключатели) позволяют выбрать одно из
нескольких значений поля или переменной. Объекты типа Option Group
представляют из себя составные объекты, содержащие внутри себя элементы,
наделенные собственными свойствами.
Объекты данного типа характеризуются свойствами, некоторые из которых
приведены ниже:
▪ ButtonCount, задает количество опций;
▪ Style, определяет вид переключателя;
▪ Left, Top, определяет расстояние между кнопками;
▪ BorderStyle, задает стиль обрамления.
Объект типа Combo Box или раскрывающийся список предназначен для
отображения на экране элементов списка. Свойства данного объекта:
▪ RowSourceType, указывает тип источника данных;
▪ RowSource, задает перечень допустимых элементов списка через
запятую.
Для добавления в форму линий используется объект Line. Настройка
параметров линии осуществляется с помощью ее свойств.
Свойство BorderColor задает цвет линии, а свойство BorderStyle
позволяет указать стиль линии.
Свойство BorderWidth предназначено для задания толщины линии.
Свойство DrawMode совместно со свойствами цветов определяет, как будет
отображаться линия на экране.
Объект Grid относится к числу сложных объектов. Он характеризуется
свойствами, относящимися ко всему объекту в целом. В свою очередь он
содержит объекты Column (определяет свойства, относящиеся к помещаемой в
столбец информации), Header (определяет свойства, характеризующие заголовок
столбца) и Text (определяет свойства поля таблицы, когда на нем установлен
фокус), каждый из которых обладает своими собственными свойствами.
Основные свойства, определяющие объект Grid в целом:
▪ ColumnCount определяет количество стобцов в создаваемом объекте
Grid;
▪ GridLineWidth задает толщину;
▪ GridLineColor – цвет сетки таблицы;
▪ RowHeight определяет высоту строки таблицы;
▪ GridLines принимает четыре значения, которые определяют стиль
таблицы;
▪ RecordSource задает источник данных помещаемой в объект информации;
▪ RecordSourceType задает тип источника данных;
▪ ChildOrder задает имя индекса, используемого для установки связи
между таблицами;
Объект Column является составной частью объекта Grid и определяет
информацию, выводимую в столбцах объекта Grid. Корректируя свойства данного
объекта, можно для каждого столбца выбрать свой цвет фона, цвет выводимой
информации, тип шрифта.
Для определения порядка следования столбцов используется свойство
ColumnOrder. Свойство Alignment задает выравнивание информации в столбце по
левому или правому краю, а также позволяет центрировать ее. Для связывания
столбца с источником информации, располагающейся в нем, предназначено
свойство ControlSource.
Объект Header является составной частью объекта Grid и определяет
заголовок столбца в объекте Grid. Свойство Caption объекта определяет
наименование заголовка столбца , а свойство Alignment задает расположение
заголовка в столбце.
Объект Text является составной частью объекта Grid и определяет вид
информации, выводимой в в столбцах объекта Grid. Отличие между объектами
Column и Text заключается в том, что свойства, заданные объектом Text,
проявляются при установке курсора на текущую запись в столбце.
Для создания форм с вкладками используется объект Page Frame. Он
состоит из нескольких вкладок, количество которых задается свойством
PageCount. Свойство Caption определяет заголовок для каждой вкладки.
Для формирования запросов в Visual FoxPro используется команда SELECT
(см. приложение А).
Под отчетом понимается форматированное представление данных, выводимое
на принтер или в файл. Любой отчет состоит состоит из пояснительного
текста, полей отчета и рамок. Текст носит произвольный характер. Рамки
служат для улучшения восприятия информации. Поля отчета могут
непосредственно соответствовать полям исходной таблицы или являтся
результатом вычеслений над ними (см. приложение Б).
Законченное приложение может использоваться пользователем любой
квалификации. Такое приложение имеет свое собственное меню, которое
заменяет основное меню Visual FoxPro и содержит команды, предназначенные
для выполнения конкретных задач. Для создания меню используется конструктор
меню.
3 ИНСТРУКЦИИ
3.1 Инструкция для пользователя
Для начала работы запустите Visual FoxPro. Выберете меню Program, а
затем – команду меню Do... (или нажмите сочетание клавиш Ctrl+D). Запустите
исполняемый файл proj1.exe, на экране появится форма, показанная на рисунке
6.
Рисунок 6 – Введение пароля
Для доступа в систему необходимо ввести свой логин и пароль в
соответствующие поля, а затем нажать на кнопку 1 (рис. 6). При желании
пароль можно изменить. Для этого нужно ввести логин и пароль, а затем
ввести свой новый пароль в соответствующее поле и нажать кнопку 2 (рис. 6).
После получения доступа ... продолжение
Казахский национальный технический университет имени К. И. Сатпаева
Институт информационных технологий
Кафедра Вычислительной Техники
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
к курсовой работе
по дисциплине Базы данных
Тема: Разработка приложения баз данных (Воздушные перевозки)
Руководитель
преподаватель кафедры
ВТ
И Син Фу Е.В.
______________________2005г.
Нормоконтролер
________________________
______________________2005г.
Студент Бралимова А.А.
Специальность ОТЗ (3703)
Группа ОТЗ-02-2р.
______________________2005г.
Алматы 2005
ЗАДАНИЕ
Вариант задания для курсовой работы по дисциплине Базы данных: 3.
Разработать базу данных и реализовать приложение БД с использованием
методов защиты БД на основе Visual FoxPro для предметной области воздушные
перевозки.
Задание выдал преподаватель:
И Син Фу Е.В.
______________________2005г.
__________________ подпись
Задание принял:
Студент Бралимова А.А.
Специальность ОТЗ (3703)
Группа ОТЗ-02-2р.
______________________ 2005г.
__________________ подпись
СОДЕРЖАНИЕ
Задание ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..2
... ... ... ... ... ... ... ... .. ... ... ... ... ... ... ... .
Содержание ... ... ... ... ... ... ... ... ... ... ... ... ... ..3
... ... ... ... ... ... ... ... .. ... ... ... ... ... ... .
Введение ... ... ... ... ... ... .. ... ... ... ... ... ... ... ..4
... ... ... ... ... ... ... ... .. ... ... ... ... ... ... ...
1 Разработка информационной модели проектирования базы 6
данных ... ... ... ...
1.1 Инфологическая модель предметной 6
области ... ... ... ... ... ... ... ... ... ... .
1.2 Даталогическая модель предметной 8
области ... ... ... ... ... ... ... ... ... ... ...
2 Разработка прикладной 10
программы ... ... ... ... ... ... . ... ... ... ... ... ... ... ..
... ... ... ...
2.1 Разработка функциональной структуры 10
приложения ... ... ... ... ... ... ...
2.2 Разработка защиты базы 11
данных ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
...
2.3 Разработка приложения базы 13
данных ... ... ... ... ... ... ... ... ... ... ... ... ... ..
3 19
Инструкции ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ... .. ... ... ... ... ... ..
3.1 Инструкция для 19
пользователя ... ... ... ... ... .. ... ... ... ... ... ... ... ..
... ... ... ...
3.2 Инструкция для сопровождающего 28
программиста ... ... ... ... ... .. ... ... ..
Заключение ... ... ... ... ... ... ... ... ... ... ... ... ... ..30
... ... ... ... ... ... ... ... .. ... ... ... ... ... ... .
Список 31
литературы ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ... .. ... ... ...
Приложение 32
А ... ... ... ... ... ... ... ... . ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ... .. ... ... ...
Приложение 91
Б ... ... ... ... ... ... ... ... . ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ... .. ... ... ...
ВВЕДЕНИЕ
Базой данных (БД) называют специальным образом организованные данные,
хранимые в вычислительной системе (ВС). БД создается для определенной
предметной области (банк, библиотека, магазин, биржа и т.д.). Сегодня БД
можно встретить практически везде. Их используют в медицине, на транспорте,
в правоохранительных органах, в городских справочных службах, на
производстве и в учебных заведениях. БД могут содержать в себе различную
информацию, получить которую можно в считанные секунды, нажав для этого
всего лишь несколько клавиш на клавиатуре компьютера.
Для создания и использования БД служат системы управления базами данных
(СУБД), которые занимают особое место в мире программного обеспечения и
нашей повседневной жизни. СУБД обеспечивают реализацию новых концепций в
организации информационных служб через создание информационных систем на
основе технологии БД. В настоящее время широко применяются муниципальные,
банковские, биржевые информационные системы, информационные системы оптовой
и розничной торговли, торговых домов, служб управления трудом и занятостью,
справочной и аналитико–прогнозной котировочной информации и др. как
правило, работа этих систем осуществляется в локальных вычислительных сетях
различной архитектуры или их объединениях, получивших название
корпоративных сетей, дальнейшая интеграция которых возможна с помощью
глобальной сети Интернет.
Подавляющее большинство современных СБД представляют собой системы
реляционного типа, т.е. использующие реляционную модель данных. Данные в
реляционных БД хранятся в таблицах – отношениях (relation). Реляционные СБД
(РСБД) – это компьютеризованные системы хранения записей в табличном виде.
Под БД в различных РСБД понимается табличное хранение данных, но название
база данных может объединять не только таблицы, но и производные этих
таблиц ( в виде отчетов, форм, виртуальных таблиц – представлений), формы
запросов, программные модули и т.д. СУБД, поддерживающие реляционную модель
данных, называются реляционными СУБД (РСУБД). Стандартным языком
взаимодействия с реляционными БД является язык запросов SQL, который
реализуется в РСУБД на основе операций реляционной алгебры и реляционного
исчисления.
Основной целью курсовой работы является приобретение практических
навыков по разработке баз данных, программной реализации приложений БД и
методов защиты БД для определенной предметной области на основе конкретной
СУБД.
В курсовой работе должна быть разработана база данных и реализовано
приложение БД с использованием методов защиты БД в среде конкретной СУБД
для определенной предметной области (ПО). Для выполнения этой задачи
необходимо выполнить: анализ ПО; определить функции, подлежащие реализации
в системе; выделить параметры ПО, необходимые для выполнения
индивидуального задания; выбрать метод защиты БД. На основе проведенного
анализа осуществляется постановка задачи, разработка информационной и
даталогической моделей ПО, алгоритмов решения задачи, их реализация.
Курсовая работа состоит из трех разделов: разработки информационной
модели и проектирования базы данных; разработки приложения БД с
использованием методов и средств защиты; разработки инструкций для работы
с БД.
1 РАЗРАБОТКА ИНФОРМАЦИОННОЙ МОДЕЛИ ПРОЕКТИРОВАНИЯ БАЗЫ ДАННЫХ
1. Инфологическая модель предметной области
Инфологическая модель – это описание предметной области без ориентации
на используемые аппаратные и программные средства.
Цель инфологического моделирования – обеспечение наиболее естественных
для человека способов сбора и представления той информации, которую
предполагается хранить в создаваемой базе данных. Поэтому инфологическую
модель данных строят по аналогии с естественным языком (последний не может
быть использован в чистом виде из-за сложности компьютерной обработки
текстов и неоднозначности любого естественного языка). Основными
конструктивными элементами инфологических моделей являются объекты, связи
между ними и их атрибуты. Атрибуты – это существенные свойства объекта,
интересующие пользователя.
Выполняя анализ предметной области воздушные перевозки, определяем
объекты, которые должны интересовать конечного пользователя. Можно выделить
два объекта:
Объект1 – Расписание рейсов.
Объект2 – Пассажиры.
Рассмотрим связь между данными объектами (рисунок 1). Один пассажир
может лететь только одним рейсом, что на рисунке показано одной стрелкой, в
то время как, на одном и том же рейсе могут лететь много пассажиров, что
на рисунке показано двойной стрелкой. Следовательно между данными объектами
реализуется отношение 1: М. Связь между таблицами осуществляется по полю:
Номер рейса.
Рисунок 1 - Тип связей между объектами Врачи и Пациенты.
Реляционная модель, не содержит связей типа многие-ко-многим,
необходимо ввести промежуточное отношение для промежуточного объекта,
которое будет содержать идентификаторы связываемых объектов. В нашем случае
таким новым объектом для связи служит объект Прием, идентификаторами
которого являются код врача, номер карты пациента, дата приема и т. д.
Каждый пациент может прийти на прием к нескольким врачам, поэтому связь
между объектами Пациенты и Прием будет один-ко-многим (см. рис. 2).
Каждый врач принимает множество пациентов, поэтому связь между объектами
Врачи и Прием также будет один-ко-многим (см. рис. 2).
Рисунок 2 - Типы связей между объектами Врачи, Пациенты и Прием.
В реляционной базе данных в качестве объектов рассматриваются
отношения, которые можно представить в виде таблиц. Таблицы между собой
связываются посредством общих полей, т.е. одинаковых по форматам и, как
правило, по названию, имеющихся в обеих таблицах. Рассмотрим, какие общие
поля надо ввести в таблицы для обеспечения связности данных. В таблицах
Врачи и Прием таким полем будет Код врача, в таблицах Пациенты и Прием -
Номер карты.
В соответствии с этим информационная структура объектов представлена в
таблице 1.
Таблица 1 – Информационная структура объектов
Объект Атрибуты Значения
Врачи код врача 1
фамилия, имя, отчество Казакова Любовь
Ярославовна
специалист кардиолог
адрес 10 микрорайон, дом 5, кв.
81
домашний телефон 382201
Пациенты номер карты 1001
фамилия, имя, отчество Петров Виталий Олегович
домашний телефон 210375
пол мужской
дата рождения 08.12.1969
адрес Дежнева, 26, кв. 7
прикрепленный житель нет
№ страхового полиса 11203
вид страхования добровольное
взят на диспансерное да
наблюдение
Продолжение таблицы 1
Прием номер карты 1001
код врача 1
повод обращения диспансеризация
кем направлен скорой помощью
дата приема 01.13.2004
Первичный ключ – это атрибут (совокупность атрибутов), однозначно
идентифицирующий конкретную запись. Таким ключем для объекта Врачи является
атрибут Код врача, для объекта Пациенты – Номер карты, а для объекта
Прием - совокупность атрибутов Код врача+ Номер карты+Дата приема.
Внешний ключ – это атрибут (совокупность атрибутов), не являющихся
первичным ключом для данного объекта, но который является первичным ключом
для логически связанного объекта. Таким ключем для объекта Прием является
атрибут Код врача, а так же Номер карты.
1.2 Даталогическая модель предметной области
Даталогическая модель представляет собой отображение логических связей
между элементами данных безотносительно к их содержанию и среде хранения.
При этом даталогическая модель разрабатывается с учетом конкретной
реализации СУБД и с учетом специфики конкретной предметной области на
основе ее инфологической модели.
В реляционной базе данных все данные хранятся в виде таблиц, при этом
все операции над базой данных сводятся к манипуляции с таблицами. В таблице
2 показана структура таблиц для предметной области поликлиника.
Таблица 2 – Структура таблиц мед_карта, врачи и прием1
Таблица Название Описание Тип поля Длина
поля поля
мед_карта номеркарты номер карты Numeric 10
фио фамилия, имя, отчество Character40
домтелефон домашний телефон Numeric 6
пол пол Character1
дата_рожд дата рождения Date 8
адрес адрес Character40
Продолжение таблицы 2
мед_карта прикреп_ж прикрепленный житель Logical 1
номерполис № страхового полиса Numeric 10
видстрахов вид страхования Character12
диспансер взят на диспансерное Logical 1
наблюдение
врачи код_врача код врача Numeric 6
фио фамилия, имя, отчество Character40
наим_проф специалист Character20
адрес адрес Character30
телефон домашний телефон Numeric 6
прием1 номеркарты номер карты Numeric 10
код_врача код врача Numeric 6
поводобращ повод обращения Character20
кемнаправл кем направлен Character20
датаприема дата приема Date 8
Таблицы состоят из строк и столбцов и имеют уникальные имена в базе
данных. База данных содержит множество таблиц, связь между которыми
устанавливается с помощью совпадающих полей. В каждой из таблиц содержится
информация о каких-либо объектах одного типа.
1. РАЗРАБОТКА ПРИКЛАДНОЙ ПРОГРАММЫ
2.1 Разработка функциональной структуры приложения
В этом разделе подробно описывается функциональные возможности
создаваемой базы данных, в частности, основные блоки создаваемого
приложения базы данных (см. рис. 3).
Определим функциональные задачи, решаемые нашим приложением.
В каждой поликлинике имеется регистратура. Она содержит картотеку на
каждого пациента данной поликлиники (медицинская карточка больного), и
данные о сотрудниках поликлиники. Следовательно пользователь должен иметь
возможность изменять данные пациента или врача (например, человек сменил
место жительства, поменял фамилию и т. д.), удалять данные о пациенте
(например, пациент перешел в другую поликлинику) или о враче (сотрудник
уволился), добавлять данные (например, в данной поликлинике
зарегистрировался новый пациент или на работу приняли нового сотрудника) и
осуществлять поиск данных о пациенте или враче. Так же в поликлинике
ведутся записи о каждом приеме, поэтому пользователь должен иметь
возможности ввода, удаления и редактирования данных о приеме.
Для решения вышеперечисленных задач используются формы, являющиеся
основой пользовательского интерфейса..
Для корректной работы нужно определить тип механизма поддержки
ссылочной целостности. Ссылочное ограничение целостноти – это поддержка
непротиворечивости данных в связанных между собой таблицах, например, код
врача в таблице врачи должен соответствовать коду врача в таблице прием1.
Поэтому на удаление ставится Restrict (недопускает удаление строк с
первичным ключом, если в дочерней таблице есть зависимые записи, связанные
через внешний ключ), а на изменение – Cascade (при изменении первичного
ключа в родительской таблице автоматически изменяются значения внешнего
ключа в дочерней таблице).
В поликлинике ведется статистика по врачам, пациентам и приему
больных. Нужно проанализировать те вопросы, ответы на которые чаще всего
нужны пользователю и по ним уже составить запросы, например, выдать
фамилию, адрес и телефон пациентов пенсионного возраста, находящихся на
диспансерном наблюдении.
Для обхода пациентом врачей ему требуется карточка, которую он получает
в регистратуре. С помощью отчета, выводимого на принтер, и создается
данная карточка (см. приложение Б). Так же вывести на принтер можно и
отчет о количестве пациентов, прошедших осмотр в указанный месяц у каждого
врача.
Рисунок 3 – Функциональная структура приложения
2.2 Разработка защиты базы данных
Термин защита (security) относится к защищенности данных от
несанкцианированного доступа, изменения или умышленного разрушения. Под
защитой данных подразумевается предотвращение доступа к ним со стороны
несанкционированных пользователей.
Разработка методов и средств защиты базы данных включает в себя:
▪ вход в систему по паролю;
▪ хранение пароля в зашифрованном виде;
▪ хранение данных в зашифрованном виде.
Вход в систему осуществляется по паролю и логину. Логин и пароль
хранятся в файле priem.dbf в зашифрованном виде.
Алгоритм входа по паролю:
после того, как пользователь указал свой логин и пароль данный файл
расшифровывается;
идет поиск логина, если он не найден, то содержание файла зашифровывается,
в противном случае идет сравнение пароля, соответствующего в таблице
указанному логину, и введенного пароля;
содержание файла зашифровывается;
при совпадении значений пользователь получает доступ к системе.
Вход по паролю подразумевает, что предполагаемый нелегальный
пользователь пытается незаконно проникнуть в базу данных с помощью обычных
средств доступа, имеющихся в системе. Но если он пытается проникнуть в базу
данных , минуя систему, то есть физически перемещая часть базы данных, то
наиболее эффективным методом борьбы с такими угрозами является шифрование
данных, то есть хранение в зашифрованном виде.
Исходные (незашифрованные данные) данные называются открытым текстом.
Открытый текст шифруется с помощью специального алгоритма шифрования. В
качестве входных данных для алгоритма выступает открытый текст, а в
качестве выходных – зашифрованная форма открытого текста, которая
называется шифрованным текстом. Именно зашифрованный текст хранится в базе
данных.
Дешифрование файлов осуществляется только после того, как пользователь
получит доступ к системе (см. рис. 4). После завершения работы пользователя
с базой данных идет шифрование содержимого файлов .dbf (для каждой
таблицы существует свой ключ шифрования). Программа шифрования написана на
языке программирования Assembler.
Рисунок 4 – Модель шифрования
2.3 Разработка приложения базы данных
Проект является основным средством объединения отдельных элементов
приложения Visual FoxPro. Он выполняет следующие функции:
▪ Запоминает расположение каждого включенного в него элемента, что
создает удобства при объединении баз данных, программ, экранных форм,
отчетов и упрощает управление приложением.
▪ Осуществляет поиск и собирает файлы, на которые есть ссылки в
проекте.
▪ Отслеживает текущие версии элементов. В случае необходимости
перекомпилирует программы, обновляет экранные формы, меню и т. д.
Создав проект и определив элементы, которые должны в него войти, вы
можете использовать его для сборки мсполняемого файла (EXE).
В Visual FoxPro можно установить постоянные отношения между таблицами в
базе данных, которые будут поддерживаться при создании форм, отчетов и
запросов. При определении отношений одна из таблиц является родительской,
а другая - дочерней. Для родительской таблицы должен быть определен
первичный ключ, а для дочерней – индекс для связи с родительской таблицей.
При задании отношений между таблицами мед_карта и прием1, врачи и прием1,
для таблиц мед_карта, врачи определены первичные ключи (см. рис. 5), а
таблица прием1 содержит индексы , не являющиеся уникальными.
Рисунок 5 - Отображение связей между таблицами
В Visual FoxPro существует два формата отображения содержимого таблицы
– в виде таблицы и в виде формы. Формат отображения в виде формы называется
экранной формой. Формы являются мощным и гибким средством представления
информации.
В Visual FoxPro для создания форм используется:
▪ Мастер форм (Form Wizard), создающий форму для одной или двух
связанных таблиц. При этом можно задать отображаемые в форме поля,
стиль их отображения и тип кнопок управления;
▪ Построитель (Builder), позволяющий создать объекты формы с
определенными свойствами;
▪ Конструктор форм (Form Designer), с помощью которого разрабатываются
собственные формы с заданными свойствами для просмотра, ввода и
редактирования данных.
Любая форма в Visual FoxPro состоит из объектов, которые имеют
характерные для них свойства. Для каждого объекта можно определить
действия, выполняемые при наступлении определенных событий. Процесс
создания формы состоит в размещении объектов в форме и определении для них
свойств, связанных с ними событий и выполняемых действий. Для размещения
объектов в форме используется панель инструментов Form Controls. В данной
курсовой работе были использованы следующие объекты:
▪ Label (текстовый объект)
▪ Text Box (поле ввода)
▪ Command Button (кнопка)
▪ Option Group (переключатель)
▪ Check Box (флахок)
▪ Grid (таблица)
▪ Combo Box (поле ввода со списком)
▪ Line (линия)
▪ Page Frame (страница)
В процессе создания формы можно объекты перемещать, удалять изменять их
размеры, а также изменять их свойства. Процесс по созданию формы может
включать в себя все или часть из приведенных ниже процедур:
▪ настройка формы;
▪ создание окружения;
▪ размещение текста;
▪ размещение полей;
▪ создание управляющих кнопок;
▪ размещение линий, прямоугольников и рисунков;
▪ установка цвета объектов формы;
▪ удаление объектов формы;
▪ перемещение объектов формы, а также перемещение областей, которые
могут содержать несколько объектов;
▪ сохранение формы.
Каждая форма имеет свойства, определяющие расположение ее в основном
окне Visual FoxPro, размер, заголовок, шрифт, цвет экрана и некоторые
другие параметры.
Размер формы и ее положение задаются относительно основного окна Visual
FoxPro. Установить эти параметры можно следующими способами: присвоить
значения свойствам Height, Width, Left и Top, определенную высоту, ширину
формы и ее положение относительно левого угла основного окна Visual FoxPro,
соответственно, или придать форме нужный размер с помощью курсорамыши и
перенести форму в место предпологаемого расположения.
Для задания заголовка, распологающегося в верхней части формы,
предназначено свойство Caption.
Стиль обрамления окна формы задается с помощью свойства BorderStyle.
Свойство BackColor позволяет выбрать цвет фона, а свойство Picture –
подходящий рисунок.
Свойство WindowsState определяет вид формы при ее вызове.
Свойства FontName, FontSize, FontBold, FontOutline, FontItalic,
FontShadow, FontStrikethru, FontUnderline, FontCondense, FontExtend задают
наименования шрифта фориы, его размер и начертание.
При использовании формы для ввода и отображения данных, содержащихся в
таблицах базы данных в Visual FoxPro устанавливается среда окружения (то
есть таблиц, используемых в форме, и связей между ними) средствами
конструктора форм. Для этой цели предназначено окно диалога Data
Environment.
Размещение текста в форме осуществляется с помощью объекта Label,
который находится на панели инструментов Form Controls. Под текстом
понимается любая текстовая информация: заголовки, наименования полей и
поясняющая информация. Ниже перечислены основные свойства объекта Label:
▪ BackStyle, определяет стиль фона текста, например, чтобы фон текста
не отличался от фона формы, нужно установить для данного свойства
значение Transparent;
▪ Caption, данным свойством задается текстовая информация;
▪ FontName, определяет тип шривта;
▪ FontSize, данное свойство задает размер шрифта;
▪ ForeColor, установленное значение данного свойства задает цвет
текстовой информации.
Наиболее простым типом поля является поле ввода – объект Text Box.
Свойство ControlSource указывает поле таблицы, которое необходимо
добавить в форму.
Для задания стиля и цвета рамки поля используются свойства BorderStyle
и BorderColor, а для определения цвета фона неактивного поля – свойство
DisabledBackColor.
Свойства FontName и FontSize определяют вид и размер шрифта, а
ForeColor – цвет информации в поле ввода.
Если информация из поля ввода должна быть доступна только для чтения,
необходимо установить значение свойства ReadOnly равным True (см.
приложение А).
Для определения значения поля по умолчанию задается свойство Value. (0
– числовое поле, {} – поле типа даты).
Для работы с таблицей наиболее удобным средством являются кнопки. Для
создания кнопок используется объект Command Button.
На кнопке можно расположить текст или графическое изображение. При
расположении текстовой информации скорректируйте свойство Caption,
разместив в поле ввода значения текст, который будет отображаться на
кнопке. Для расположения на кнопке графического изображения используется
свойство Picture.
Для определения команд, которые будут выполняться при нажатии кнопки
служит метод Click, который автоматически вызывается при нажатии на кнопку
мыши.
Для индикации состояния, которое может иметь только одно из двух
допустимых значений, используются флажки (объекты типа Check Box). Они
могут использоваться по одному или группами. При установке флажка значение
будет соответствовать 1, а при снятии флажка – значению 0.
Для связывания флажка с полем таблицы нужно скорректировать свойство
ControlSource, задав в качестве значения свойства поле таблицы.
Свойство Caption определяет заголовок, отображаемый справа от флажка в
форме.
Свойства ForeColor, BackStyle, FontName определяют цвет, фон и шрифт.
Объекты типа Option Group (переключатели) позволяют выбрать одно из
нескольких значений поля или переменной. Объекты типа Option Group
представляют из себя составные объекты, содержащие внутри себя элементы,
наделенные собственными свойствами.
Объекты данного типа характеризуются свойствами, некоторые из которых
приведены ниже:
▪ ButtonCount, задает количество опций;
▪ Style, определяет вид переключателя;
▪ Left, Top, определяет расстояние между кнопками;
▪ BorderStyle, задает стиль обрамления.
Объект типа Combo Box или раскрывающийся список предназначен для
отображения на экране элементов списка. Свойства данного объекта:
▪ RowSourceType, указывает тип источника данных;
▪ RowSource, задает перечень допустимых элементов списка через
запятую.
Для добавления в форму линий используется объект Line. Настройка
параметров линии осуществляется с помощью ее свойств.
Свойство BorderColor задает цвет линии, а свойство BorderStyle
позволяет указать стиль линии.
Свойство BorderWidth предназначено для задания толщины линии.
Свойство DrawMode совместно со свойствами цветов определяет, как будет
отображаться линия на экране.
Объект Grid относится к числу сложных объектов. Он характеризуется
свойствами, относящимися ко всему объекту в целом. В свою очередь он
содержит объекты Column (определяет свойства, относящиеся к помещаемой в
столбец информации), Header (определяет свойства, характеризующие заголовок
столбца) и Text (определяет свойства поля таблицы, когда на нем установлен
фокус), каждый из которых обладает своими собственными свойствами.
Основные свойства, определяющие объект Grid в целом:
▪ ColumnCount определяет количество стобцов в создаваемом объекте
Grid;
▪ GridLineWidth задает толщину;
▪ GridLineColor – цвет сетки таблицы;
▪ RowHeight определяет высоту строки таблицы;
▪ GridLines принимает четыре значения, которые определяют стиль
таблицы;
▪ RecordSource задает источник данных помещаемой в объект информации;
▪ RecordSourceType задает тип источника данных;
▪ ChildOrder задает имя индекса, используемого для установки связи
между таблицами;
Объект Column является составной частью объекта Grid и определяет
информацию, выводимую в столбцах объекта Grid. Корректируя свойства данного
объекта, можно для каждого столбца выбрать свой цвет фона, цвет выводимой
информации, тип шрифта.
Для определения порядка следования столбцов используется свойство
ColumnOrder. Свойство Alignment задает выравнивание информации в столбце по
левому или правому краю, а также позволяет центрировать ее. Для связывания
столбца с источником информации, располагающейся в нем, предназначено
свойство ControlSource.
Объект Header является составной частью объекта Grid и определяет
заголовок столбца в объекте Grid. Свойство Caption объекта определяет
наименование заголовка столбца , а свойство Alignment задает расположение
заголовка в столбце.
Объект Text является составной частью объекта Grid и определяет вид
информации, выводимой в в столбцах объекта Grid. Отличие между объектами
Column и Text заключается в том, что свойства, заданные объектом Text,
проявляются при установке курсора на текущую запись в столбце.
Для создания форм с вкладками используется объект Page Frame. Он
состоит из нескольких вкладок, количество которых задается свойством
PageCount. Свойство Caption определяет заголовок для каждой вкладки.
Для формирования запросов в Visual FoxPro используется команда SELECT
(см. приложение А).
Под отчетом понимается форматированное представление данных, выводимое
на принтер или в файл. Любой отчет состоит состоит из пояснительного
текста, полей отчета и рамок. Текст носит произвольный характер. Рамки
служат для улучшения восприятия информации. Поля отчета могут
непосредственно соответствовать полям исходной таблицы или являтся
результатом вычеслений над ними (см. приложение Б).
Законченное приложение может использоваться пользователем любой
квалификации. Такое приложение имеет свое собственное меню, которое
заменяет основное меню Visual FoxPro и содержит команды, предназначенные
для выполнения конкретных задач. Для создания меню используется конструктор
меню.
3 ИНСТРУКЦИИ
3.1 Инструкция для пользователя
Для начала работы запустите Visual FoxPro. Выберете меню Program, а
затем – команду меню Do... (или нажмите сочетание клавиш Ctrl+D). Запустите
исполняемый файл proj1.exe, на экране появится форма, показанная на рисунке
6.
Рисунок 6 – Введение пароля
Для доступа в систему необходимо ввести свой логин и пароль в
соответствующие поля, а затем нажать на кнопку 1 (рис. 6). При желании
пароль можно изменить. Для этого нужно ввести логин и пароль, а затем
ввести свой новый пароль в соответствующее поле и нажать кнопку 2 (рис. 6).
После получения доступа ... продолжение
Похожие работы
Дисциплины
- Информатика
- Банковское дело
- Оценка бизнеса
- Бухгалтерское дело
- Валеология
- География
- Геология, Геофизика, Геодезия
- Религия
- Общая история
- Журналистика
- Таможенное дело
- История Казахстана
- Финансы
- Законодательство и Право, Криминалистика
- Маркетинг
- Культурология
- Медицина
- Менеджмент
- Нефть, Газ
- Искуство, музыка
- Педагогика
- Психология
- Страхование
- Налоги
- Политология
- Сертификация, стандартизация
- Социология, Демография
- Статистика
- Туризм
- Физика
- Философия
- Химия
- Делопроизводсто
- Экология, Охрана природы, Природопользование
- Экономика
- Литература
- Биология
- Мясо, молочно, вино-водочные продукты
- Земельный кадастр, Недвижимость
- Математика, Геометрия
- Государственное управление
- Архивное дело
- Полиграфия
- Горное дело
- Языковедение, Филология
- Исторические личности
- Автоматизация, Техника
- Экономическая география
- Международные отношения
- ОБЖ (Основы безопасности жизнедеятельности), Защита труда