Разработка базы данных " Учет, регистрация пациентов и приемов

Инфологическая и даталогическая модели данных. Описание пользовательской части и используемых sql-запросов. Физическая и логическая модель web-приложения. Описание используемых программных средств, языка программирования и информационных технологий.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 29.04.2015
Размер файла 1,3 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Содержание

  • Введение
  • 1. Анализ предметной области
  • 2. Инфологическая модель данных
  • 3. Даталогическая модель данных
  • 4. Создание базы данных
  • 5. Описание пользовательской части
  • 6. Описание используемых sql-запросов
  • 7. Физическая и логическая модель web-приложения
  • 8. Описание используемых программных средств, языка программирования и информационных технологий
  • Заключение
  • Библиографический список
  • пользовательский приложение программный запрос

Введение

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

Здравоохранение - большая сфера жизни человечества, в которой некоторые процессы, такие как ведение учетов пациентов, приемов, формирование отчетов, нуждаются в автоматизации. Выбранная мною предметная область "Учет, регистрация пациентов и приемов" заключает в себе процесс регистрации пациентов, приемов и выписанных рецептов.

Данная система необходима для учета пациентов, прошедших обследование или лечение в поликлинике, это позволит улучшить и ускорить процесс регистрации пациентов и приемов, и сократить время для поиска данных.

Для курсовой работы была поставлена цель: разработать эффективную и удобную базу данных и web-приложение "Учет, регистрация пациентов и приемов".

Задачи:

· Исследовать предметную область;

· Создать инфологическую и даталогическую модели данных;

· Установить тип связей в таблице;

· Разработать и заполнить таблицы соответствующими данными;

· Создать запросы для вывода необходимых полей;

· Разработать web-приложение для удобства пользования.

1. Анализ предметной области

Рассмотрим процесс учета приемов и пациентов в поликлинике. В поликлинике работают врачи различного профиля, имеющие разную квалификацию. Каждый день в поликлинику обращаются люди с интересующими их вопросами или жалобами. Все пациенты проходят обязательную регистрацию, при которой создается личная карточка пациента и записываются его личные данные (Ф.И.О., № медицинской карты, адрес, телефон, №СНИЛС, № полиса, паспортные данные). При обращении в поликлинику пациент обследуется врачами разного профиля и проходит лечение у разных специалистов. После осмотра доктор ставит диагноз и выписывает рецепт, который составляют соответствующие препараты. Дата, время приема, диагноз, выписанные лекарства заносятся в карточку пациента. На основании исследования предметной области были выделены следующие сущности и их атрибуты:

· ДОКТОР (код доктора, фамилия, имя, отчество, профиль, квалификация, кабинет);

· ПАЦИЕНТ (код пациента, фамилия, имя, отчество, номер карты, адрес, телефон, № СНИЛС, № полиса, паспортные данные);

· ПРЕПАРАТЫ (код препарата, название препарата, категория);

· ПРИЕМ ( код приема, код доктора, код пациента, код рецепта, диагноз, дата и время приема, примечания);

· РЕЦЕПТ (код рецепта);

· Рецепт/Препарат (код рецепта, код препарата, дозировка, курс);

Сущности Доктор и Пациент связаны с Приемом, внешними ключами которого будут являться код доктора, код пациента. Рецепт является вспомогательной сущностью, не имеющей первичный ключ, она разделяет связь многие-ко-многим (N:М) между приемом и препаратом.

2. Инфологическая модель данных

ER-диаграмма - это набор сущностей и связей между ними. Она содержит информацию о сущностях системы и способах их взаимодействия, включает идентификацию объектов, важных для предметной области (сущностей), свойств этих объектов (атрибутов) и их отношений с другими объектами (связей). Во многих случаях информационная модель очень сложна и содержит множество объектов [4]. Основные понятия ER-диаграмм представлены в Таблице 1.

Таблица 1 - Основные понятия ER-диаграммы

Цель инфологического моделирования - обеспечение наиболее естественных для человека способов сбора и представления той информации, которую предполагается хранить в создаваемой базе данных. Поэтому инфологическая модель данных строится по аналогии с естественным языком. Основными конструктивными элементами инфологических моделей являются сущности, связи между ними и их свойства (атрибуты).

Между двумя сущностями возможны четыре вида связей:

· один-к-одному (1:1): в каждый момент времени каждому представителю (экземпляру) сущности А соответствует 1 или 0 представителей сущности В;

· один-ко-многим (1:М): одному представителю сущности А соответствуют 0, 1 или несколько представителей сущности В;

· многие-к-одному (М:1): одному представителю сущности B соответствуют 0, 1 или несколько представителей сущности А;

· многие-ко-многим (N:М): одному представителю сущности B соответствуют 0, 1 или несколько представителей сущности А и одновременно одному представителю сущности А соответствуют 0, 1 или несколько представителей сущности В.

Инфологическая модель БД "Учет, регистрация пациентов и приемов", представленная на Рисунке 2.1, составлена по всем требованиям построения ER-диаграмм и включает в себя семь сущностей со всеми их атрибутами, описание и виды связей между сущностями

Рисунок 2.1 - Инфологическая модель

3. Даталогическая модель данных

Описание, создаваемое по инфологической модели данных, называют даталогической моделью данных. Даталогическая модель отражает логические связи между элементами данных вне зависимости от их содержания и среды хранения. Выделяются подмножества этой логической модели, называемые внешними моделями, отражающие их представления о предметной области. Внешняя модель соответствует представлениям, которые пользователи получают на основе логической модели, в то время как концептуальные требования отражают представления, которые пользователи первоначально желали иметь и которые легли в основу разработки инфологической модели [3].

Физическая модель данных - модель, определяющая размещение данных на внешних носителях, методы доступа и технику индексирования. Она так же называется внутренней моделью системы.

Внешние модели (логические модели) никак не связаны с типом физической памяти, в которой будут храниться данные, и с методами доступа к этим данным. Внутренние модели (физические модели) наоборот определяют и оперируют размещением данных и их взаимосвязях на запоминающих устройствах.

Логическая и физическая модели БД "Учет, регистрация пациентов и приемов" представлены на Рисунке 3.1 и на Рисунке 3.2 соответственно.

4. Создание базы данных

MySQL - это система управления реляционными базами данных. В реляционной базе данные хранятся в отдельных таблицах, благодаря чему достигается выигрыш в скорости и гибкости. Таблицы связываются между собой при помощи отношений, благодаря чему обеспечивается возможность объединять при выполнении запроса данные из нескольких таблиц. SQL как часть системы MySQL можно охарактеризовать как язык структурированных запросов плюс наиболее распространенный стандартный язык, используемый для доступа к базам данных [5].

База данных Poliklinika ("Учет, регистрация пациентов и приемов") состоит из пяти таблиц Doctor (доктор), Patsiyent (пациент), Preparat (препарат), Priyem (прием), Recept (рецепт).

Таблицы Doctor (доктор), Patsiyent (пациент) связаны с таблицей Priyem (прием). Способ создания связей через внешние ключи представлен на Рисунке 4.1.

Рисунок 4.1 - Внешние ключи

Таблица Priyem, связана с таблицей Doctor через столбец Kod_doctora (Код доктора), который стал внешним ключом. Таблица Priyem связана с таблицей Patsiyent через столбец Kod_patsiyenta (Код пациента).

Во всех случаях стоит каскадное обновление и удаление.

Таблицы Priyem (Прием), Preparat (Препарат) связаны с таблицей Recept (Рецепт). Способ создания связей через внешние ключи представлен на Рисунке 4.2.

Рисунок 4.2 - Внешние ключи

Таблица Recept, связана с таблицей Preparat через столбец Kod_preparata (Код препарата), который стал внешним ключом. Таблица Recept связана с таблицей Priyem через столбец Kod_priyema (Код приема).

В первом случае стоит каскадное обновление и удаление, а во втором ограниченное обновление и каскадное удаление.

В таблице Doctor (см. Рисунок 4.3) первичным ключом является Kod_doctora (код_занятия). Данные о докторе (Famil_doc, Imia_doc, Otch_doc) имеют строковый тип (VARCHAR) длиной в 50 символов, профиль доктора (Profil) имеет строковый тип (VARCHAR) длиной в 30 символов, номер кабинета (Kabinet) имеет числовой тип данных (INT) длиной в 10 символов, квалификация (Kvalifikaciya) имеет строковый тип (VARCHAR) и количество символов 30.

Рисунок 4.3 - Doctor (Доктор)

В таблице Patsiyent первичным ключом является Kod_patsiyenta (Код пациента) и хранятся такие данные о пациентах, как Famil_pats (Фамилия), Imia_pats (Имя), Otch_pats (Отчество), Adres (Адрес), Pasp_dan (Паспортные данные). Они являются строковыми данными (VARCHAR). Номер карты пацциента (№_kartyi) и телефон (Phone) обозначаются цифрами, поэтому стоит числовой тип данных - INT. В номере СНИЛС (№SNILS) присутствуют как буквы, так и числа, поэтому используется строковый тип данных длиной в 11 символов. Полис (Polis) так же является строковым типом данных и имеет 16 символов. Таблица показана на Рисунке 4.4.

Рисунок 4.4 - Patsiyent (Пациент)

Таблица Preparat, показанная на Рисунке 4.5, состоит из первичного ключа Kod_preparata (Код_препарата), имеющий длину строки 11 и числовой тип данных INT. Название препарата (Nazvanie_prep) и категория (Kategoriya) имеют строковый тип данных VARCHAR и отведенная длина для них равняется 70.

Рисунок 4.5 - Preparat (Препарат)

Таблица Priyem (см. Рисунок 4.6) состоит из первичного ключа Kod_priyema (Код_приема). Диагноз (Diagnoz), поставленный врачом является строковым типом данных VARCHAR и отведенная длина равняется 50. Дата приема (Data_vremia) так же имеет тип VARCHAR. В примечаниях (Primech) будет храниться дополнительная информация, не обязательная к заполнению, поэтому поле может принимать нулевое значение и оставаться пустым.

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

Рисунок 4.6 - Priyem (Прием)

Таблица Recept представленная на Рисунке 4.7, первичного ключа не имеет, так как является связующей, вспомогательной таблицей. Она имеет вторичные ключи Kod_preparata (Код препарата) и Kod_priyema (Код приема) с помощью которых передаются данные из других таблиц. Дозировка (Dozirovka) и Курс (Kyrs) имеют строковый тип VARCHAR и длину строк 50.

Рисунок 4.7 - Recept (Рецепт)

5. Описание пользовательской части

Пользовательская часть состоит из станиц, содержащих данные о докторах, пациентах, приемах и выписанных на них рецептах.

Начальной является страница Список пациентов, представленная на Рисунке 5.1

Рисунок 5.1 - Список пациентов

Часть кода, которая выводит данные на страницу Список пациентов представлена в Листинге 1.

Листинг 1 - Вывод данных на страницу Список пациентов

$handle = new mysqli('kyrsovik', 'mysql', 'mysql', 'Poliklinika');

$query = "SELECT Kod_patsiyenta,

Famil_pats,

Imia_pats,

Otch_pats,

№_kartyi,

Adres,

Phone,

№SNILS,

Polis,

Pasp_dan

FROM Patsiyent";

$result = $handle->query($query);

$numresult=$result->num_rows;

echo '<table border=1 align=center>';

echo '<th>№ карты</th>';

echo '<th>Фамилия</th>';

echo '<th>Имя</th>';

echo '<th>Отчество</th>';

echo '<th></th>';

for ($i=0;$i<$numresult;$i++)

{

$row=$result->fetch_assoc();

echo '<tr><td>'.$row['№_kartyi'];

echo '</td><td>'.$row['Famil_pats'];

echo '</td><td>'.$row['Imia_pats'];

echo '</td><td>'.$row['Otch_pats'];

echo '</td><td>';

echo '<form action="pacprosm.php" method="post">';

echo '<input type="hidden" name="Kod_patsiyenta" value="'.$row['Kod_patsiyenta'].'">';

echo '<input class="b" type="submit" value="Просмотр">';

echo '</form>';

}

echo '</table>';

При нажатии на кнопку "Доктора" осуществляется переход на страницу Список докторов, представленную на Рисунке 5.2

Рисунок 5.2 - Список докторов

Часть кода, которая выводит данные на страницу Список докторов представлена в Листинге 2.

Листинг 2 - Вывод данных на страницу Список докторов

$handle = new mysqli('kyrsovik', 'mysql', 'mysql', 'Poliklinika');

$query = "SELECT Kod_doctora,

Famil_doc,

Imia_doc,

Otch_doc,

Profil,

Kabinet,

Kvalifikaciya

FROM Doctor";

$result = $handle->query($query);

$numresult=$result->num_rows;

echo '<table border=1 align=center>';

echo '<th>ФИО доктора</th>';

echo '<th>Профиль</th>';

echo '<th>Кабинет</th>';

echo '<th>Квалификация</th>';

echo '<th></th>';

echo '<th></th>';

for ($i=0;$i<$numresult;$i++)

{

$row=$result->fetch_assoc();

echo '<tr><td>'.$row['Famil_doc'];echo ' '.$row['Imia_doc'];echo ' '.$row['Otch_doc'];

echo '</td><td>'.$row['Profil'];

echo '</td><td>'.$row['Kabinet'];

echo '</td><td>'.$row['Kvalifikaciya'];

echo '</td><td>';

echo '<form action="podtvudaldoc.php" method="post">';

echo '<input type="hidden" name="Kod_doctora" value="'.$row['Kod_doctora'].'">';

echo '<input class="b" type="submit" value="Удалить">';

echo '</form>';

echo '</td><td>';

echo '<form action="izdoc.php" method="post">';

echo '<input type="hidden" name="Kod_doctora" value="'.$row['Kod_doctora'].'">';

echo '<input class="b" type="submit" value="Изменить">';

echo '</form>';

}

echo '</table>';

При вводе в поиск номера карты пациента или фамилии, выводится карта пациента. Аналогично выводится карта при нажатии на кнопку Просмотр. Карта амбулаторного больного представлена на Рисунке 5.3

Рисунок 5.3 - Карта амбулаторного больного

Часть кода, которая выводит карту амбулаторного больного представлена в Листинге 3.

Листинг 3 - Вывод данных на страницу Карточка пациента

$Kod_patsiyenta = $_POST['Kod_patsiyenta'];

$handle = new mysqli('kyrsovik', 'mysql', 'mysql', 'Poliklinika');

$query = "SELECT Kod_patsiyenta,

Famil_pats,

Imia_pats,

Otch_pats,

№_kartyi,

Adres,

Phone,

№SNILS,

Polis,

Pasp_dan

FROM Patsiyent

WHERE Patsiyent.Kod_patsiyenta='$Kod_patsiyenta'";

$result = $handle->query($query);

$numresult=$result->num_rows;

$row=$result->fetch_assoc();

echo '<table border=0 align=center><tr><td class="d">';

echo '<br><b>№ карты: </b>'.$row['№_kartyi'];

echo '<br><br><b>ФИО:</b>'.$row['Famil_pats'];

echo ' '.$row['Imia_pats'];echo ' '.$row['Otch_pats'];

echo '<br><br><b>Адрес: </b>'.$row['Adres'];

echo '<br><br><b>№ телефона: </b>'.$row['Phone'];

echo '<br><br><b>№ СНИЛС: </b>'.$row['№SNILS'];

echo '<br><br><b>Полис: </b>'.$row['Polis'];

echo '<br><br><b>Паспорные данные: </b>'.$row['Pasp_dan'];

echo '</td></tr>';

echo '<tr><td><form action="delpac.php" method="post" align=center>';

echo '<input type="hidden" name="Kod_patsiyenta" value="'.$row['Kod_patsiyenta'].'">';

echo '<input class="b" type="submit" value="Удалить">';

echo '</form>';

echo '</td></tr><tr><td><form action="pacorderformedit.php" method="post" align=center>';

echo '<input type="hidden" name="Kod_patsiyenta" value="'.$row['Kod_patsiyenta'].'">';

echo '<input class="b" type="submit" value="Изменить">';

echo '</form>';

echo '</td></tr><tr><td><form action="posech.php" method="post" align=center>';

echo '<input type="hidden" name="Kod_patsiyenta" value="'.$row['Kod_patsiyenta'].'">';

echo '<input class="b" type="submit" value="Приемы">';

echo '</form>';

echo '</td></tr></table>';

echo '</td></tr><tr><td><form action="pac.php" method="post" align=center>';

echo '<input type="hidden" name="Kod_patsiyenta" value="'.$row['Kod_patsiyenta'].'">';

echo '<input class="b" type="submit" value="Назад">';

echo '</form>';

echo '</td></tr></table>';

В карте каждого пациента фиксируются приемы. При нажатии на кнопку Приемы выводятся все приемы пациента. Приемы пациента представлены на Рисунке 5.4

Рисунок 5.4 - Приемы пациента

Часть кода, которая выводит информацию о приемах пациента представлена в Листинге 4.

Листинг 4 - Вывод данных на страницу Приемы пациента

$Kod_patsiyenta=$_REQUEST['Kod_patsiyenta'];

$handle = new mysqli('kyrsovik', 'mysql', 'mysql', 'Poliklinika');

$query = "SELECT Priyem.Kod_priyema,

Priyem.Diagnoz,

Priyem.Data_vremia,

Priyem.Primech,

Doctor.Famil_doc,

Doctor.Imia_doc,

Doctor.Otch_doc

FROM Priyem, doctor

WHERE Priyem.Kod_patsiyenta=$Kod_patsiyenta and Priyem.Kod_doctora=doctor.kod_doctora";

$result = $handle->query($query);

$numresult=$result->num_rows;

echo '<table border=1 align=center>';

echo '<th>ФИО доктора</th>';

echo '<th>Диагноз</th>';

echo '<th>Дата приема</th>';

echo '<th>Примечания</th>';

echo '<th></th>';

echo '<th></th>';

echo '<th></th>';

for ($i=0;$i<$numresult;$i++)

{

$row=$result->fetch_assoc();

echo '<tr><td>'.$row['Famil_doc'];echo ' '.$row['Imia_doc'];echo ' '.$row['Otch_doc'];

echo '</td><td>'.$row['Diagnoz'];

echo '</td><td>'.$row['Data_vremia'];

echo '</td><td>'.$row['Primech'];

echo '</td><td>';

echo '<form action="recept.php" method="post">';

echo '<input type="hidden" name="Kod_priyema" value="'.$row['Kod_priyema'].'">';

echo '<input class="b" type="submit" value="Рецепт">';

echo '</form>';

echo '</td><td>';

echo '<form action="delposech.php" method="post">';

echo '<input type="hidden" name="Kod_priyema" value="'.$row['Kod_priyema'].'">';

echo '<input class="b" type="submit" value="Удалить прием">';

echo '</form>';

echo '</td><td>';

echo '<form action="izposech.php" method="post">';

echo '<input type="hidden" name="Kod_priyema" value="'.$row['Kod_priyema'].'">';

echo '<input class="b" type="submit" value="Изменить данные">';

echo '</form>';

}

echo '</table>';

На приемах выписываются рецепты. На Рисунке 5.5 изображена страница с таблицей лекарств, которую мы можем посмотреть при нажатии на кнопку Рецепты.

Рисунок 5.5 - Рецепт

Часть кода, которая выводит информацию о рецепте, выписанном на приеме представлена в Листинге 5.

Листинг 5 - Вывод данных на страницу Информация о рецептах

$Kod_priyema=$_REQUEST['Kod_priyema'];

$handle = new mysqli('kyrsovik', 'mysql', 'mysql', 'Poliklinika');

$query = "SELECT Recept.Dozirovka,

Recept.Kyrs,

Preparat.Kod_preparata,

Preparat.Nazvanie_prep,

Preparat.Kategoriya

FROM Recept,Preparat

WHERE Recept.Kod_priyema=$Kod_priyema and Recept.Kod_preparata=Preparat.Kod_preparata";

$result = $handle->query($query);

$numresult=$result->num_rows;

echo '<table border=1 align=center>';

echo '<th>Название препарата</th>';

echo '<th>Категория</th>';

echo '<th>Дозировка</th>';

echo '<th>Курс</th>';

echo '<th></th>';

echo '<th></th>';

for ($i=0;$i<$numresult;$i++)

{

$row=$result->fetch_assoc();

echo '<tr><td>'.$row['Nazvanie_prep'];

echo '</td><td>'.$row['Kategoriya'];

echo '</td><td>'.$row['Dozirovka'];

echo '</td><td>'.$row['Kyrs'];

echo '</td><td>';

echo '<form action="delrecept.php" method="post">';

echo '<input type="hidden" name="Kod_priyema" value="'.$Kod_priyema.'">';

echo '<input type="hidden" name="Kod_preparata" value="'.$row['Kod_preparata'].'">';

echo '<input class="b" type="submit" value="Удалить рецепт">';

echo '</form>';

echo '</td><td>';

echo '<form action="izrecept.php" method="post">';

echo '<input type="hidden" name="Kod_priyema" value="'.$Kod_priyema.'">';

echo '<input type="hidden" name="Kod_preparata" value="'.$row['Kod_preparata'].'">';

echo '<input class="b" type="submit" value="Изменить">';

echo '</form>';

}

echo '</table>';

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

На каждой странице есть кнопка ввода данных и редактирования.

Ввод данных приема и рецепта имеет выпадающий список, в остальных же таблицах данные вводятся вручную. При сохранении производится проверка идентичности записей. Если такие данные уже существуют в БД, то выведется сообщение.

При нажатии на кнопку "Изменить" открывается страница редактирования, где можно изменить существующие данные, при этом производится проверка на совпадающие записи. При нажатии на кнопку "Удалить" удаляется запись полностью. При удалении информации о докторах производится проверка на использование этих данных в таблице приемы. Если запись входит в прием, выводится запрос подтверждения удаления.

6. Описание используемых sql-запросов

SQL (Structured Query Language -- "язык структурированных запросов") -- универсальный компьютерный язык, применяемый для создания, модификации и управления данными в реляционных базах данных.

Каждое предложение SQL -- это либо запрос данных из базы, либо обращение к базе данных, которое приводит к изменению данных в базе. В соответствии с тем, какие изменения происходят в базе данных, различают следующие типы запросов:

· запросы на создание или изменение в базе данных новых или существующих объектов (при этом в запросе описывается тип и структура создаваемого или изменяемого объекта);

· запросы на получение данных;

· запросы на добавление новых данных (записей);

· запросы на удаление данных;

· обращения к СУБД.

Основным объектом хранения реляционной базы данных является таблица, поэтому все SQL-запросы -- это операции над таблицами. В соответствии с этим, запросы делятся на:

· запросы, оперирующие самими таблицами (создание и изменение таблиц);

· запросы, оперирующие с отдельными записями (или строками таблиц) или наборами записей.

Самый главный вид запроса -- это запрос, возвращающий (пользователю) некоторый набор строк, с которым можно осуществить одну из трёх операций:

· просмотреть полученный набор;

· изменить все записи набора;

· удалить все записи набора.

Таким образом, одно из главных мест в курсовой работе занимают SQL-запросы. От правильности их составления зависит эффективность работы web-приложения.

Для вывода информации из БД в таблицу использовался запрос SELECT, представленный в Листинге 6. В результате вывелась таблица Приемы, ФИО доктора, диагноз, дата приема, примечания.

Листинг 6 - Вывод данных в таблицу

SELECT Priyem.Kod_priyema,

Priyem.Diagnoz,

Priyem.Data_vremia,

Priyem.Primech,

Doctor.Famil_doc,

Doctor.Imia_doc,

Doctor.Otch_doc

FROM Priyem, doctor

WHERE Priyem.Kod_patsiyenta=$Kod_patsiyenta and Priyem.Kod_doctora=doctor.kod_doctora

В SELECT перечисляются необходимые столбцы. Если эти данные только из одной таблицы, можно поставить звездочку или перечислить только названия столбцов. Если данные из разных таблиц, то через точку пишутся название таблицы и название столбца.

В FROM идет перечисление используемых таблиц в запросе - расписание, группы, дисциплины, преподаватели, аудитории, неделя.

В WHERE расписывается связь таблиц через их внешние ключи и какие-либо условия, если они есть.

Для сохранения введенных данных в БД используется запрос INSERT INTO, представленный в Листинге 7. При помощи данного запроса в таблицу Доктора в поля ФИО, профиль, кабинет и квалификация из переменных PHP-кода $Famil_doc, $ Imia_doc, $ Otch_doc, $ Profil, $ Kabinet, $ Kvalifikaciya были записаны введенные данные.

Листинг 7 -Запись новых строк в базу данных

INSERT

INTO Doctor

(Famil_doc,Imia_doc,Otch_doc,Profil,Kabinet,Kvalifikaciya)

VALUES ('$Famil_doc','$Imia_doc','$Otch_doc','$Profil',$Kabinet,'$Kvalifikaciya')

Где в INTO указывается таблица и столбцы, в которые записываются данные, а после VALUES перечисляются переменные, содержащие эти данные.

Для сохранения изменения данных употребляется запрос UPDATE, продемонстрированный в Листинге 8, где в таблицу Доктора в поля ФИО доктора, профиль, кабинет, квалификация были введены изменения из PHP-переменных $nazv и $kurs при условии, что значение первичного ключа совпадает со значением PHP-переменной $Kod_doctora.

Листинг 8 -Обновление значения в заданных столбцах

UPDATE Doctor SET

Kod_doctora=$Kod_doctora,

Famil_doc='$Famil_doc',

Imia_doc='$Imia_doc',

Otch_doc='$Otch_doc',

Profil='$Profil',

Kabinet=$Kabinet,

Kvalifikaciya ='$Kvalifikaciya'

WHERE Kod_doctora=$Kod_doctora

После UPDATE пишется название таблицы, а после SET идет перечисление, какие поля заменяются какими данными из переменных. В WHERE сравнивается первичный ключ с переменной, содержащей значение первичного ключа строки, данные которой необходимо изменить.

Удаление данных производится при помощи небольшого запроса DELETE, который можно увидеть в Листинге 9. В данном случае из таблицы Доктора была удалена строка, выбранная администратором и переданная через PHP-переменную $Kod_doctora.

Листинг 9 - Удаление данных

DELETE FROM Doctor WHERE Kod_doctora=$Kod_doctora

В FROM пишется название таблицы, после WHERE условие, сравнивающее первичные ключи всех строк с переменной, содержащей значение первичного ключа.

7. Физическая и логическая модель web-приложения

1. Пользовательская часть состоит из 20 страниц, не считая страниц-обработчиков:

· Главная - http:// kyrsovik / pac.php;

· Список докторов - http:// kyrsovik / doc.php;

· Список докторов - Ввести данные - http:// kyrsovik / dobavdoc.php;

· Список докторов - Подтверждение удаления - http:// kyrsovik / podtvudaldoc.php;

· Список докторов - Удалить - http:// kyrsovik / deldoc.php;

· Список докторов - Изменить - http:// kyrsovik / izdoc.php;

· Главная - Найти - http:// kyrsovik / poisk.php;

· Главная - Добавить пациента - http:// kyrsovik / pacprosm.php;

· Карточка пациента - http:// kyrsovik / pacprosm.php;

· Карточка пациента - Изменить - http:// kyrsovik / pacorderformedit.php;

· Карточка пациента - Удалить - http:// kyrsovik / delpac.php;

· Преподаватели - http:// kyrsovik / prep.php;

· Приемы - http:// kyrsovik / posech.php;

· Приемы - Создать запись - http:// kyrsovik / sozpos.php;

· Приемы - Изменить - http:// kyrsovik / izposech.php;

· Приемы - Удалить - http:// kyrsovik / delposech.php;

· Информация о рецептах - http:// kyrsovik / recept.php;

· Информация о рецептах - Создать запись - http:// kyrsovik / sozrecept.php;

· Информация о рецептах - Удалить - http:// kyrsovik / delrecept.php;

· Информация о рецептах - Изменить - http:// kyrsovik / izrecept.php;

2. Физическая модель сайта "Городская поликлиника".

Все файлы хранятся в папке с названием "kyrsovik". Нет никаких подпапок.

8. Описание используемых программных средств, языка программирования и информационных технологий

Для разработки БД "Учет, регистрация пациентов и приемов" использовались восемь основных программных средств и языков программирования:

1. В первую очередь для построения инфологической модели возникла необходимость воспользоваться программой Microsoft Visio.

Microsoft Visio - векторный графический редактор, редактор диаграмм и блок-схем для Windows.

2. Следующим пунктом было создание даталогической модели, которая строится в ERWin.

ERWin - CASE-средство для проектирования и документирования баз данных, которое позволяет создавать, документировать и сопровождать базы данных, хранилища и витрины данных. Модели данных помогают визуализировать структуру данных, обеспечивая эффективный процесс организации, управления и администрирования таких аспектов деятельности предприятия, как уровень сложности данных, технологий баз данных и среды развертывания.

3. Для дальнейшей работы была необходима установка такой программной среды, как OpenServer.

OpenServer - это портативная серверная платформа и программная среда, созданная специально для веб-разработчиков с учётом их рекомендаций. Программный комплекс имеет богатый набор серверного программного обеспечения, удобный, многофункциональный продуманный интерфейс, обладает мощными возможностями по администрированию и настройке компонентов. Платформа широко используется с целью разработки, отладки и тестирования веб-проектов, а так же для предоставления веб-сервисов в локальных сетях.

4. Работа OpenServer тесно связана и невозможна без ApacheHTTP-сервера.

ApacheHTTP-сервер - это свободный веб-сервер, представляющий собой кроссплатформенное программное обеспечение и поддерживающий операционные системы Linux, BSD, Mac OS, MicrosoftWindows, NovellNetWare, BeOS.

5. В пакет OpenServer входит MySQL Менеджер, в котором и создавалась база данных "Учет, регистрация пациентов и приемов".

MySQL Менеджер - свободная реляционная система управления базами данных. Разработку и поддержку MySQL осуществляет корпорация Oracle. Продукт распространяется как под GNU GeneralPublicLicense, так и под собственной коммерческой лицензией [1].

MySQL является решением для малых и средних приложений. Входит в состав серверов WAMP, AppServ, LAMP и в портативные сборки серверов Денвер, XAMPP, VertrigoServ. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы.

6. Для удобства разработки web-приложения и более простой читаемости кода была выбрана программа Notepad++.

Notepad++ - бесплатный многофункциональный текстовый редактор с подсветкой синтаксиса для Windows таких языков программирования, как CSS, HTML, PHP, Perl, MySQL, Java, C++, Pascal, XML и многих других.

7. Для создания любой web-страницы используется HTML - это гипертекстовый язык разметки (HyperTextMarkupLanguage), который используется для создания документов в Интернет (веб-страниц), содержащих все нужные элементы. На HTML странице можно разместить простой текст, выделить его жирным или курсивом, вставить ссылку, таблицу, нумерованный или ненумерованный список, картинки, разбить текст на абзацы и разделы, задавать разделам заголовки. Также на HTML страницу можно вставить форму с текстовыми полями, кнопками, выбором вариантов из списка, checkbox'ами и radio элементами. В HTML5 в страницу можно встраивать видео и аудио файлы, рисовать при помощи canvas, делать простые анимации при помощи новых тегов(marquee).

8. Для расширения функциональности приложения использовался язык PHP.

PHP (HypertextPreprocessor -- "PHP: препроцессор гипертекста"; первоначально Personal Home Page Tools-- "Инструменты для создания персональных веб-страниц") -- скриптовый язык программирования общего назначения, интенсивно применяемый для разработки веб-приложений. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров и является одним из лидеров среди языков программирования, применяющихся для создания динамических веб-сайтов [4]..

Язык и его интерпретатор разрабатываются группой энтузиастов в рамках проекта с открытым кодом. Проект распространяется под собственной лицензией, несовместимой с GNU GPL.

Заключение

В результате выполнения данной курсовой работы было выполнено полное описание предметной области и её анализ, были выявлены основные сущности и их атрибуты, связи между ними, построена инфологическая модель, модели данных логического и физического уровней, была выполнена работа в Open Server. В данной БД также возможно добавление, изменение и удаление пациентов. Курсовая работа может быть использована для информационной поддержки любой городской поликлиники.

Приложение решает следующие основные задачи:

· удобный интерфейс

· внесение информации в таблицы с использованием форм

· редактирование имеющихся записей

· удаление имеющихся записей

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

Библиографический список

1. Википедия [электронный ресурс]. - Режим доступа: https://ru.wikipedia.org/, свободный

2. Дэвис, Мишель Е., Филлипс, Джон А. [Текст]: Изучаем PHP и MySQL- СПб.: Символ-Плюс, 2008.- 482 с.

3. Дуванов, А.А. Информационные технологии [Текст]: журнал "Информатика"- М.: Первое сентября, 2007 - № 16 - 35 с.

4. Орлов, О.В. Методические указания к лабораторным предметам [Электронный ресурс]. - Режим доступа: http://orloff.am.tpu.ru/.

5. Шелдон Роберт, Джоффрей Мойе [Текст]: MySQL 5: базовый курс = Beginning MySQL. -- М.: Диалектика", 2007. -- 880 с.

6. PHP [Электронный ресурс]: портал по веб-технологиям . - Режим доступа: http://www.php.su/, свободный.

Размещено на Allbest.ru


Подобные документы

  • Описание предметной области и соотношения между объектами. Этапы проектирования базы данных, ее инфологическая, концептуальная и физическая модели. Использование режима "Конструктор" при создании таблиц, разработка форм, запросов и отчетов в MS Access.

    курсовая работа [2,5 M], добавлен 07.11.2012

  • Выбор и реализация модели базы данных. Концептуальная модель базы данных. Описание логической модели базы данных, SQL-запросов, приложения маскировки эффектов, контрольного примера, программных средств работы. Инструкция по эксплуатации программы.

    курсовая работа [693,4 K], добавлен 19.05.2014

  • Выделение информационных объектов и их инфологическая модель. Логическая структура реляционной базы данных. Разработка таблиц в системе управления базами данных Access. Создание запросов, форм и отчетов в СУБД Access. Разработка приложения пользователя.

    курсовая работа [2,8 M], добавлен 05.02.2018

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

    курсовая работа [3,2 M], добавлен 24.10.2014

  • Требования к составу и параметрам технических средств. Инфологическая (концептуальная) модель предметной области. Физическая и логическая модель базы данных. Создание структуры БД в СУБД MS ACCESS. Программирование приложения. Описание работы с системой.

    курсовая работа [572,2 K], добавлен 17.11.2014

  • Особенности разработки инфологической модели и создание структуры реляционной базы данных. Основы проектирования базы данных. Разработка таблиц, форм, запросов для вывода информации о соответствующей модели. Работа с базами данных и их объектами.

    курсовая работа [981,4 K], добавлен 05.11.2011

  • Разработка структуры базы данных в приложении Access. Создание запросов. Создание отчета для эффективного представления данных в печатном формате. Панель элементов, используемых при создании формы. Обработка данных с помощью языка запросов в SQL.

    курсовая работа [1,7 M], добавлен 09.05.2012

  • Форма построения документа и варианты структуры его содержательной части. Инфологическая модель в виде ЕR-диаграммы и даталогическая модель базы данных. Создание таблицы в конструкторе в Microsoft Access, построение и выполнение запросов, форм и отчетов.

    курсовая работа [1,4 M], добавлен 01.01.2014

  • Анализ предметной области, этапы проектирования автоматизированных информационных систем. Инструментальные системы разработки программного обеспечения. Роль CASE-средств в проектировании информационной модели. Логическая модель проектируемой базы данных.

    курсовая работа [410,6 K], добавлен 21.03.2011

  • Конструирование базы данных для бухгалтерского учета при начислении зарплаты сотрудникам. Функциональная структура, концептуальная, логическая и физическая модель БД. Выделение информационных объектов. Тексты SQL-запросов, результаты их выполнения.

    курсовая работа [3,3 M], добавлен 27.10.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.