Разработка приложения баз данных (Воздушные перевозки)


Тип работы: Курсовая работа
Бесплатно: Антиплагиат
Объем: 46 страниц
В избранное:
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РЕСПУБЛИКИ КАЗАХСТАН
Казахский национальный технический университет имени К. И. Сатпаева
Институт информационных технологий
Кафедра Вычислительной Техники
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
к курсовой работе
по дисциплине «Базы данных»
Тема : Разработка приложения баз данных (Воздушные перевозки)
Руководитель
преподаватель кафедры ВТ
И Син Фу Е. В.
«»2005г.
Нормоконтролер
«»2005г.
Студент Бралимова А. А.
Специальность ОТЗ (3703)
Группа ОТЗ-02-2р.
«»2005г.
Алматы 2005
ЗАДАНИЕ
Вариант задания для курсовой работы по дисциплине «Базы данных»: 3.
Разработать базу данных и реализовать приложение БД с использованием методов защиты БД на основе Visual FoxPro для предметной области воздушные перевозки.
Задание выдал преподаватель:
И Син Фу Е. В.
«»2005г.
подпись
Задание принял:
Студент Бралимова А. А.
Специальность ОТЗ (3703)
Группа ОТЗ-02-2р.
«» 2005г.
подпись
СОДЕРЖАНИЕ
ВВЕДЕНИЕ
Базой данных (БД) называют специальным образом организованные данные, хранимые в вычислительной системе (ВС) . БД создается для определенной предметной области (банк, библиотека, магазин, биржа и т. д. ) . Сегодня БД можно встретить практически везде. Их используют в медицине, на транспорте, в правоохранительных органах, в городских справочных службах, на производстве и в учебных заведениях. БД могут содержать в себе различную информацию, получить которую можно в считанные секунды, нажав для этого всего лишь несколько клавиш на клавиатуре компьютера.
Для создания и использования БД служат системы управления базами данных (СУБД), которые занимают особое место в мире программного обеспечения и нашей повседневной жизни. СУБД обеспечивают реализацию новых концепций в организации информационных служб через создание информационных систем на основе технологии БД. В настоящее время широко применяются муниципальные, банковские, биржевые информационные системы, информационные системы оптовой и розничной торговли, торговых домов, служб управления трудом и занятостью, справочной и аналитико-прогнозной котировочной информации и др. как правило, работа этих систем осуществляется в локальных вычислительных сетях различной архитектуры или их объединениях, получивших название корпоративных сетей, дальнейшая интеграция которых возможна с помощью глобальной сети Интернет.
Подавляющее большинство современных СБД представляют собой системы реляционного типа, т. е. использующие реляционную модель данных. Данные в реляционных БД хранятся в таблицах - отношениях (relation) . Реляционные СБД (РСБД) - это компьютеризованные системы хранения записей в табличном виде. Под БД в различных РСБД понимается табличное хранение данных, но название «база данных» может объединять не только таблицы, но и производные этих таблиц ( в виде отчетов, форм, виртуальных таблиц - представлений), формы запросов, программные модули и т. д. СУБД, поддерживающие реляционную модель данных, называются реляционными СУБД (РСУБД) . Стандартным языком взаимодействия с реляционными БД является язык запросов SQL, который реализуется в РСУБД на основе операций реляционной алгебры и реляционного исчисления.
Основной целью курсовой работы является приобретение практических навыков по разработке баз данных, программной реализации приложений БД и методов защиты БД для определенной предметной области на основе конкретной СУБД.
В курсовой работе должна быть разработана база данных и реализовано приложение БД с использованием методов защиты БД в среде конкретной СУБД для определенной предметной области (ПО) . Для выполнения этой задачи необходимо выполнить: анализ ПО; определить функции, подлежащие реализации в системе; выделить параметры ПО, необходимые для выполнения индивидуального задания; выбрать метод защиты БД. На основе проведенного анализа осуществляется постановка задачи, разработка информационной и даталогической моделей ПО, алгоритмов решения задачи, их реализация.
Курсовая работа состоит из трех разделов: разработки информационной модели и проектирования базы данных; разработки приложения БД с использованием методов и средств защиты; разработки инструкций для работы с БД.
1 РАЗРАБОТКА ИНФОРМАЦИОННОЙ МОДЕЛИ ПРОЕКТИРОВАНИЯ БАЗЫ ДАННЫХ
- Инфологическая модель предметной области
Инфологическая модель - это описание предметной области без ориентации на используемые аппаратные и программные средства.
Цель инфологического моделирования - обеспечение наиболее естественных для человека способов сбора и представления той информации, которую предполагается хранить в создаваемой базе данных. Поэтому инфологическую модель данных строят по аналогии с естественным языком (последний не может быть использован в чистом виде из-за сложности компьютерной обработки текстов и неоднозначности любого естественного языка) . Основными конструктивными элементами инфологических моделей являются объекты, связи между ними и их атрибуты. Атрибуты - это существенные свойства объекта, интересующие пользователя.
Выполняя анализ предметной области воздушные перевозки, определяем объекты, которые должны интересовать конечного пользователя. Можно выделить два объекта:
Объект1 - Расписание рейсов.
Объект2 - Пассажиры.
Рассмотрим связь между данными объектами (рисунок 1) . Один пассажир может лететь только одним рейсом, что на рисунке показано одной стрелкой, в то время как, на одном и том же рейсе могут лететь много пассажиров, что на рисунке показано двойной стрелкой. Следовательно между данными объектами реализуется отношение 1: М. Связь между таблицами осуществляется по полю: Номер рейса.
Рисунок 1 - Тип связей между объектами Врачи и Пациенты.
Реляционная модель, не содержит связей типа многие-ко-многим, необходимо ввести промежуточное отношение для промежуточного объекта, которое будет содержать идентификаторы связываемых объектов. В нашем случае таким новым объектом для связи служит объект Прием , идентификаторами которого являются код врача, номер карты пациента, дата приема и т. д. Каждый пациент может прийти на прием к нескольким врачам, поэтому связь между объектами Пациенты и Прием будет один-ко-многим (см. рис. 2) . Каждый врач принимает множество пациентов, поэтому связь между объектами Врачи и Прием также будет один-ко-многим (см. рис. 2) .
Рисунок 2 - Типы связей между объектами Врачи, Пациенты и Прием.
В реляционной базе данных в качестве объектов рассматриваются отношения, которые можно представить в виде таблиц. Таблицы между собой связываются посредством общих полей, т. е. одинаковых по форматам и, как правило, по названию, имеющихся в обеих таблицах. Рассмотрим, какие общие поля надо ввести в таблицы для обеспечения связности данных. В таблицах Врачи и Прием таким полем будет «Код врача», в таблицах Пациенты и Прием - «Номер карты».
В соответствии с этим информационная структура объектов представлена в таблице 1.
Таблица 1 - Информационная структура объектов
Продолжение таблицы 1
Первичный ключ - это атрибут (совокупность атрибутов), однозначно идентифицирующий конкретную запись. Таким ключем для объекта Врачи является атрибут «Код врача», для объекта Пациенты - «Номер карты», а для объекта Прием - совокупность атрибутов «Код врача»+ «Номер карты»+«Дата приема».
Внешний ключ - это атрибут (совокупность атрибутов), не являющихся первичным ключом для данного объекта, но который является первичным ключом для логически связанного объекта. Таким ключем для объекта Прием является атрибут «Код врача», а так же «Номер карты».
1. 2 Даталогическая модель предметной области
Даталогическая модель представляет собой отображение логических связей между элементами данных безотносительно к их содержанию и среде хранения. При этом даталогическая модель разрабатывается с учетом конкретной реализации СУБД и с учетом специфики конкретной предметной области на основе ее инфологической модели.
В реляционной базе данных все данные хранятся в виде таблиц, при этом все операции над базой данных сводятся к манипуляции с таблицами. В таблице 2 показана структура таблиц для предметной области поликлиника.
Таблица 2 - Структура таблиц мед_карта , врачи и прием1
Продолжение таблицы 2
Таблицы состоят из строк и столбцов и имеют уникальные имена в базе данных. База данных содержит множество таблиц, связь между которыми устанавливается с помощью совпадающих полей. В каждой из таблиц содержится информация о каких-либо объектах одного типа.
- РАЗРАБОТКА ПРИКЛАДНОЙ ПРОГРАММЫ
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, размер, заголовок, шрифт, цвет экрана и некоторые другие параметры.
... продолжение- Информатика
- Банковское дело
- Оценка бизнеса
- Бухгалтерское дело
- Валеология
- География
- Геология, Геофизика, Геодезия
- Религия
- Общая история
- Журналистика
- Таможенное дело
- История Казахстана
- Финансы
- Законодательство и Право, Криминалистика
- Маркетинг
- Культурология
- Медицина
- Менеджмент
- Нефть, Газ
- Искуство, музыка
- Педагогика
- Психология
- Страхование
- Налоги
- Политология
- Сертификация, стандартизация
- Социология, Демография
- Статистика
- Туризм
- Физика
- Философия
- Химия
- Делопроизводсто
- Экология, Охрана природы, Природопользование
- Экономика
- Литература
- Биология
- Мясо, молочно, вино-водочные продукты
- Земельный кадастр, Недвижимость
- Математика, Геометрия
- Государственное управление
- Архивное дело
- Полиграфия
- Горное дело
- Языковедение, Филология
- Исторические личности
- Автоматизация, Техника
- Экономическая география
- Международные отношения
- ОБЖ (Основы безопасности жизнедеятельности), Защита труда