- Введение
Одной из актуальных проблем любого вида человеческой деятельности является проблема обработки увеличивающегося потока информации.
Перспективным способом решения данной проблемы является автоматизация работы с информацией, в частности, создание компьютерных баз данных, позволяющих хранить, систематизировать и обрабатывать данные.
Целью данной работы является создание базы данных больницы (частной клиники).
Она предназначена для хранения информации о врачах, пациентах клиники, вспомогательной информации о распорядке работы больницы (кабинеты, графики работы) и приеме больных, с возможностью внесения данных, выборки и изменения данных, вывода информации в необходимом формате.
Предметной областью базы данных является деятельность частной больницы, специализирующейся на лор-заболеваниях.
Прием пациентов ведут несколько врачей в разных кабинетах. Входная информация для базы данных: медицинские карты, бланки приема пациентов, сведения о клиентах и врачах.
Целью создания базы данных является автоматизация учета информации о приеме пациентов.
Назначение проектируемой базы:
- хранение информации о врачах клиники;
- хранение информации о кабинетах клиники;
- хранение информации о пациентах;
- хранение информации о приемах, в том числе диагнозах и лечении, а также стоимости лечения;
- обновление и добавление информации;
- анализ информации по различным срезам (пациенты, кабинеты, врачи);
- выдача итоговой информации в виде отчетов.
Анализ информации проектируемой базы данных позволяет выделить следующие основные информационные объекты:
Пациент, Врач, График работы врача, Кабинет (рисунок 1).
Рисунок 1 — Информационные объекты предметной области «Больница»
Реальные отношения между информационными объектами «многие-ко-многим» разбиваются на отношения «один-ко-многим» после ввода пятого объекта-связки Прием .
База данных курсовых работ
... описываются данные об автомобилях, клиентах и прокатах. 1. Проектирование базы данных 1.1 Описание предметной области В рамках данной курсовой работы рассматривается ... СУБД. К этим данным относится не только информация в таблицах, но и другие объекты базы данных, например форма, отчет ... далеко друг от друга и от места хранения баз данных, созданы сетевые мультипользовательские версии БД основанных на ...
График работы
- График работы (условное символьное обозначение)
- Рабочие дни
- Выходные дни
- Примечание
Врач являются:
- Код (номер) врача для однозначной идентификации
- Фамилия,
- Имя
- Отчество
- Специальность
- График работы
- Образование
- Пол
- Дата рождения
- Дата начала работы
Атрибутами объекта Пациент являются:
- Код (номер) пациента для однозначной идентификации
- Фамилия
- Имя
- Отчество
- Пол
- Дата рождения
- Телефон
- Наличие карточки
Атрибутами объекта Кабинет являются:
- Номер
- Режим
- Ответственный
- Внутренний телефон
Атрибутами объекта-связки Прием являются:
- Номер
- Дата
- Время
- Пациент
- Врач
- Кабинет
- Диагноз
- Расширенная информация о диагнозе и лечении
- Стоимость лечения
- Наличие оплаты.
Номер (код) для каждого объекта необходим для однозначной идентификации записей и в дальнейшем будет использоваться как ключевое поле.
Каждому объекту поставим в соответствие таблицу.
Таблица «Врачи» содержит 10 полей. Поля и свойства полей таблицы «Врачи» приведены в таблице:
Таблица «Врачи»
Поле |
Тип поля |
Свойства поля |
|
Код врача |
Счетчик |
Ключевое поле |
|
Фамилия |
Текстовый |
Обязательное поле. Длина- 30 символов. |
|
Имя |
Текстовый |
Длина- 30 символов. |
|
Отчество |
Текстовый |
Длина- 30 символов. |
|
Специальность |
Текстовый, подстановка (поле со списком) |
Источник строк: список значений: терапевт;отоларинголог |
|
График работы |
Текстовый, подстановка (поле со списком) |
Источник строк: таблица «График работы» (столбец подстановки содержит поля «График работы» и «Выходные дни» с заголовками, отображается поле «График работы».) |
|
Образование |
Текстовый |
Длина- 50 символов. Значение по умолчанию: «высшее (БГМУ)» |
|
Пол |
Текстовый, подстановка (поле со списком) |
Источник строк: список значений: муж, жен |
|
Дата рождения |
Дата/время |
Краткий формат даты Маска ввода: 00.00.»19″00 |
|
Дата начала работы |
Дата/время |
Краткий формат даты 00.00.0000 |
|
Таблица «Пациенты» содержит 8 полей. Поля и свойства полей таблицы «Пациенты» приведены в таблице:
Таблица «Пациенты»
Поле |
Тип поля |
Свойства поля |
|
Номер пациента |
Счетчик |
Ключевое поле |
|
Фамилия |
Текстовый |
Обязательное поле. Длина- 40 символов. |
|
Имя |
Текстовый |
Длина- 30 символов. |
|
Отчество |
Текстовый |
Длина- 30 символов. |
|
Пол |
Текстовый, подстановка (поле со списком) |
Источник строк: список значений: муж, жен. При вводе ограничиться списком. |
|
Дата рождения |
Дата/время |
Краткий формат даты Маска ввода: 00.00.0000 Условие на значение: значение между 1990 и текущим годом: Between #01.01.1900# And Date().
Сообщение об ошибке: «Дата неверная! Пожалуйста, повторите ввод.» |
|
Телефон |
Текстовый |
Длина- 7 символов. Маска ввода: 000\-00\-00 Условие на значение: не пустое. Сообщение об ошибке: «Поле очень важное! Заполните его, пожалуйста.» |
|
Наличие карточки |
Логический Тип элемента управления: флажок |
Формат поля: Да/Нет |
|
Таблица «Графики работы» содержит 4 поля. Поля и свойства полей таблицы «Графики работы» приведены в таблице:
Таблица «Графики работы»
Поле |
Тип поля |
Свойства поля |
|
График работы |
Текстовый |
Ключевое поле Длина- 1 символ. |
|
Рабочие дни |
Текстовый |
Длина- 20 символов. |
|
Выходные дни |
Текстовый |
Обязательное поле. Длина- 20 символов. |
|
Примечание |
Текстовый |
Длина- 100 символов. |
|
Таблица «Кабинеты» содержит 4 поля. Названия, типы и свойства полей таблицы приведены в таблице:
Таблица «Кабинеты»
Поле |
Тип поля |
Свойства поля |
|
Номер кабинета |
Числовой |
Ключевое поле Целое, основной формат, число десятичных знаков- 0, формат ввода-00 |
|
Режим |
Текстовый |
Длина- 50 символов. Значение по умолчанию: «8.00-9.00 санобработка » Обязательное поле. |
|
Ответственный за кабинет |
Текстовый |
Длина- 40 символов. |
|
Внутренний телефон |
Текстовый |
Длина- 4 символа. Маска ввода: 0\-00 |
|
Таблица «Прием» содержит 10 полей. Поля и свойства полей таблицы приведены в таблице:
Таблица «Прием»
Поле |
Тип поля |
Свойства поля |
|
Номер |
Счетчик |
Ключевое поле |
|
Дата приема |
Дата/время |
Краткий формат даты Маска ввода: 00.00.»20″00 |
|
Время приема |
Дата/время |
Краткий формат времени Маска ввода: 00:00 |
|
Пациент (код) |
Числовой (Подстановка; Тип элемента управления- поле со списком) |
Источник строк: таблица «Пациенты» (столбец подстановки содержит поля «Номер пациента» и «Фамилия» из таблицы «Пациенты», подставляется поле «Номер пациента».) Обязательное поле. |
|
Врач |
Числовой (Подстановка; Тип элемента управления- поле со списком) |
Источник строк: таблица «Врачи» (столбец подстановки содержит поля «Фамилия», «Специальность» и «График работы» из таблицы «Врачи», подставляется поле «Фамилия»).
Обязательное поле. |
|
Кабинет |
Числовой (Подстановка; Тип элемента управления- поле со списком) |
Источник строк: таблица «Кабинеты» (столбец подстановки содержит поля «Номер», «Режим» из таблицы «Кабинеты», подставляется поле «Номер»).
Обязательное поле. |
|
Диагноз |
Текстовый |
Обязательное поле. Длина- 50 символов. Значение по умолчанию «устанавливается». |
|
Расширенная информация о лечении |
Поле МЕМО |
Формат поля: Да/Нет |
|
К оплате |
Денежный |
Формат поля- денежный. Число десятичных знаков- 0 |
|
Наличие оплаты |
Логический |
Формат поля: Да/Нет Тип элемента управления: флажок |
|
Для установления связей каждому объекту назначен ключ (ключевое поле для соответствующей таблицы).
Причем ключи объектов Пациент , Кабинет и Врач (первичные) должны присутствовать как внешние ключи в объекте Прием , а ключ объект График работы (первичный — его название) -в объекте Врачи.
Все связи имеют тип «один-ко-многим» и обеспечивается целостность данных (рисунок 2).
Рисунок 2 — Отношения 1:? между информационными объектами- связи между таблицами базы данных.
Создадим запросы для обработки информации, содержащейся в таблицах.
Запрос 1 (рисунок 3) выводит по алфавиту список всех пациентов врача Петрика с датами и стоимостью приемов. Это простой запрос на выборку с сортировкой.
Рисунок 3 — Запрос на выборку пациентов Петрика
Запрос 2 выводит телефоны всех пациентах, которые посещали отоларингологов и год рождения которых больше, чем 1987. В данном запросе используется два условия (рисунок 4).
Рисунок 4 — Запрос 2 на выборку телефонов пациентов
Параметрический запрос 3 выводит список врачей, в графике которых среди рабочих дней имеется тот, который вводится пользователем с клавиатуры (рисунок 5).
Рисунок 5 -Параметрический запрос 3 на выборку врачей по дню недели
Запрос 4 выводит вычисляемое поле, где находится стаж врачей. Чтобы это число выразить в годах, используется встроенная функция Datediff с параметром “yyyy” (единицы измерения- годы), при этом стаж вычисляется как разница текущей даты (функция Date()) и поля «Начало работы» таблицы «Врачи» (рисунок 6).
Рисунок 6 -Запрос на вычисление стажа врачей
Запрос 5 использует групповые операции и выводит количество (Count) приемов пациентов по датам (рисунок 7).
Рисунок 7 -Запрос на вывод ежедневного количества приемов пациентов
Перекрестный запрос 6 вычисляет суммарную стоимость лечения пациентов по дням и по врачам: то есть для каждого врача-заголовка строки- и каждой даты- заголовка столбца- вычисляется на пересечении значение ячейки как суммы соответствующих оплат (рисунок 8).
Рисунок 8-Оплата за лечение по датам и врачам- перекрестный запрос
Запрос 7 на создание таблицы создает дополнительную таблицу из таблицы «Прием», помещая туда список пациентов, уже оплативших лечение. В этой таблице будут также добавлены поля из других таблиц (рисунок 9).
Рисунок 9-Запрос на создание дополнительной таблицы
Запрос8 на обновление дополнительной таблицы увеличивает записи поля «К оплате» на 10% (рисунок10)
Рисунок 10-Запрос на обновление полей дополнительной таблицы
Запрос 9 на добавление добавляет в дополнительную таблицу (в которую изначально была отобрана информация о пациентах, оплативших лечение) информацию о клиентах, не оплативших лечение (рисунок 11).
Рисунок 11-Запрос на добавление полей дополнительной таблицы
Запрос 10 на удаление (рисунок 12)
Рисунок 12-Запрос на удаление полей дополнительной таблицы
Для облегчения работы с данными в таблицах созданы формы для каждой таблицы.
Форма для таблицы «Графики работы» (рисунок 13) имеет табличный вид и предназначена для удобного просмотра и редактирования данных в таблице.
Рисунок 13- Форма «Графики работы»
Формы для таблицы «Кабинеты», «Пациенты» и «Прием» (рисунки 14-16) отображают данные и позволяют вводить информацию в соответствующую таблицу. Между собой они отличаются только оформлением.
Рисунок 14- Форма «Кабинеты»
Рисунок 15- Форма «Пациенты»
В форму «Прием» дополнительно добавлено поле из таблицы пациента для отображения его фамилии рядом с номером.
Рисунок 16- Форма «Прием»
Форма «Врачи» содержит связанную форму «Прием», что позволяет увидеть информацию о пациентах, которых принимал врач (рисунок 17).
Рисунок 17- Форма «Врачи»
Главная (кнопочная) форма не содержит информацию из таблиц, но с помощью ее кнопок можно переходить по всем объектам базы данных. Создать кнопочную форму можно с помощью диспетчера (Сервис/Служебные программы/ Диспетчер кнопочных форм).
Запуск базы данных с формы можно назначить с помощью окна, вызываемого командой Сервис/Параметры запуска.
Рисунок 18- Главная (кнопочная) форма базы данных
Отчеты базы данных предназначены для вывода данных на печатающее устройство (принтер).
В отчете 1 (приложение 1) выводятся данные о пациентах врача Петрика А.С. со стоимостью лечения. Отчет создан на основе запроса 1. Информация сгруппирована по фамилиям пациентов, представлены промежуточные и основные итоги.
Отчет 2 (приложение 2) создан на основе второго запроса на выборку пациентов с годом рождения после 1987 г., которые посещали отоларингологов.
Отчеты имеют стандартное оформление и содержат элементы, характерные для печатных документов (номера страниц, служебная информация о времени создания отчета и т. п.)
Созданная база данных содержит структуру и информацию предметной области «больница». В состав базы данных входят таблицы, запросы, формы и отчеты.
Связанные таблицы позволяют облегчить труд врачей, персонала в регистратуре, предоставляя быструю информацию о графике работы врачей, незанятых кабинетах, истории болезни пациента.
Запросы дают возможность извлечь нужную информацию по заданным критериям с необходимым упорядочиванием (выборки с сортировкой), сгруппировать данные и вычислить необходимые величины (групповые операции, отчеты с вычисляемыми полями) или изменить таблицы с большим количеством полей (добавление, обновление, удаления записей).
Формы отображают информацию из таблиц в удобном виде, а также служат для ввода данных в таблицы.
Отчеты выводят информацию на печать в нужном формате и (при необходимости) с группировкой и итогами .
Таким образом, база может быть использована для увеличения эффективности работы больницы (клиники) путем ускорения таких операций, как запись пациентов на прием, ведение первичной финансовой отчетности, создание и хранение архивной информации о пациентах в удобной для поиска и обработки форме.