Tooprogram.ru

Компьютерный справочник
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

База данных больница access

Пример базы данных «Поликлиника» (Access)

Структура базы данных

В примере выбрана очень простая структура базы данных:
— таблица врачей (Doctors);
— таблица клиентов (Patients);
— таблица посещений клиентами врачей (Visits).
Скачать пример базы данных «Поликлиника» (далее будут предлагаться примеры с изменениями, но для обучения работе с базой данных крайне полезно иметь исходную версию, не заграможденную объектами (таблицами, запросами. )).

Две первые таблицы — независимы друг от друга, заполняются предварительно или по мере необходимости. Также они служат источниками записей для таблицы посещений. ID третьей таблицы служит номером для талончика к врачу.

Объекты базы данных

Кроме перечисленных выше таблиц в базе есть две формы (главная и для заполнения двух таблиц — врачей и пациентов). Также в базе есть один отчет — талончики к врачу.

Работа с базой данных «Поликлиника»

Прежде чем вы сможете выписать конкретному пациенту талончик к конкретному врачу (таблица Visits), необходимо наличие этих пациента и врача в таблицах Patients и Doctors соответственно. В главной форме включена таблица, куда заносятся данные о визите пациента к врачу, но она не обновляется автоматически. Чтобы увидеть вновь «занесенных» врача или пациента в выпадающих списках необходимо закрыть и снова открыть главную форму. На самом деле не обязательно заносить данные в главной форме. После того, как базе данных были указаны связи между таблицами при создании записи «врач» или записи «пациент» мы имеем возможность создать «визит» в той же самой таблице (обратите внимание на появляющийся слева после создания записи «врач» или «пациент» крестик, кликнув по которому, вы увидите подтаблицу визитов к врачу; номер талончика (visitID) будет создаваться автоматически и он будет уникальным). Чтобы это происходило «само собой», мы объединили таблицы, точнее установили связи между полями таблицы. Access позволяет связывать между собой таблицы легко и непринужденно.

Связи таблиц в базе данных

А именно: поле visitDoctor выбирает запись из таблицы Doctors, а поле visitPatient — из таблицы Patients. Чтобы связать таблицы, необходимо найти значок на панели, обозначающий связи таблиц (обведено красным) или кликнуть правой мышкой на любом свободном месте окна базы данных и выбрать «Связи» («Relationships»).

Вот как это выглядит:

Для тренировки вы можете удалить и создать связь. Для этого кликните правой мышкой на линии обозначающей связь таблиц, выберите «Удалить» («Delete») (сами таблицы или формы, отчеты в которых используется одна из таблиц должны быть закрыты). Теперь создадим связь: нажимаем курсором на ключевом поле patientID таблицы Patients (если вы связь удалили с этой таблицей), не отпуская мышки тянем ее к полю visitPatient таблицы Visits, когда курсор изменится, отпускаем и работаем с появившимся диалоговым окном Access(ставим галочку, как на рисунке):

Подсчет стоимости предоставленных услуг в базе данных «Поликлиника»

Первое решение, которое приходит в голову — добавить в таблицу врачей поле, в котором каждому врачу сопоставить стоимость его услуг. Но если хоть немного подумать, то будет понятно, что стоимость может меняться со временем, а нам желательно сохранять цены за разные периоды, хотя бы для статистики. Значит, необходимо создать новую таблицу в нашей базе данных. Структура таблицы VisitCosts. Кроме ключевого поля visitCostID нам как минимум понадобятся следующие поля:
— visitCostDoctorID — «внешний ключ» (врачи)
— visitCostFrom — дата, с которой стоимость приема действительна
— visitCostTill — дата, до которой стоимость приема действительна
— visitCostValue — стоимость приема в выбранный период.

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

База данных «Больница»

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

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

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

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

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

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

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

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

1. Описание базы данных

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

Прием пациентов ведут несколько врачей в разных кабинетах. Входная информация для базы данных: медицинские карты, бланки приема пациентов, сведения о клиентах и врачах.

Целью создания базы данных является автоматизация учета информации о приеме пациентов.

Назначение проектируемой базы:

-хранение информации о врачах клиники;

-хранение информации о кабинетах клиники;

-хранение информации о пациентах;

-хранение информации о приемах, в том числе диагнозах и лечении, а также стоимости лечения;

-обновление и добавление информации;

-анализ информации по различным срезам (пациенты, кабинеты, врачи);

-выдача итоговой информации в виде отчетов.

2. Описание объектов базы данных

Анализ информации проектируемой базы данных позволяет выделить следующие основные информационные объекты:

Пациент, Врач, График работы врача, Кабинет (рисунок 1).

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

Рисунок 1 — Информационные объекты предметной области «Больница»

Реальные отношения между информационными объектами «многие-ко-многим» разбиваются на отношения «один-ко-многим» после ввода пятого объекта-связки Прием.

Атрибутами объекта График работы являются:

· График работы (условное символьное обозначение)

Атрибутами объекта Врач являются:

· Код (номер) врача для однозначной идентификации

· Дата начала работы

Атрибутами объекта Пациент являются:

· Код (номер) пациента для однозначной идентификации

Атрибутами объекта Кабинет являются:

Атрибутами объекта-связки Прием являются:

· Расширенная информация о диагнозе и лечении

Номер (код) для каждого объекта необходим для однозначной идентификации записей и в дальнейшем будет использоваться как ключевое поле.

3. Описание таблиц

Каждому объекту поставим в соответствие таблицу.

Таблица «Врачи» содержит 10 полей. Поля и свойства полей таблицы «Врачи» приведены в таблице:

Длина- 30 символов.

Длина- 30 символов.

Длина- 30 символов.

подстановка (поле со списком)

Источник строк: список значений: терапевт;отоларинголог

подстановка (поле со списком)

Источник строк: таблица «График работы» (столбец подстановки содержит поля «График работы» и «Выходные дни» с заголовками, отображается поле «График работы».)

Длина- 50 символов.

Значение по умолчанию: «высшее (БГМУ)»

Текстовый, подстановка (поле со списком)

Источник строк: список значений: муж, жен

Краткий формат даты

Маска ввода: 00.00.»19″00

Дата начала работы

Краткий формат даты

Таблица «Пациенты» содержит 8 полей. Поля и свойства полей таблицы «Пациенты» приведены в таблице:

Длина- 40 символов.

Длина- 30 символов.

Длина- 30 символов.

подстановка (поле со списком)

Источник строк: список значений: муж, жен. При вводе ограничиться списком.

Краткий формат даты

Маска ввода: 00.00.0000

Условие на значение: значение между 1990 и текущим годом: Between #01.01.1900# And Date().

Сообщение об ошибке: «Дата неверная! Пожалуйста, повторите ввод.»

Длина- 7 символов.

Маска ввода: 000-00-00

Условие на значение: не пустое.

Сообщение об ошибке: «Поле очень важное! Заполните его, пожалуйста.»

Тип элемента управления: флажок

Формат поля: Да/Нет

Таблица «Графики работы» содержит 4 поля. Поля и свойства полей таблицы «Графики работы» приведены в таблице:

Таблица «Графики работы»

Длина- 20 символов.

Длина- 20 символов.

Длина- 100 символов.

Таблица «Кабинеты» содержит 4 поля. Названия, типы и свойства полей таблицы приведены в таблице:

Целое, основной формат, число десятичных знаков- 0, формат ввода-00

Длина- 50 символов.

Значение по умолчанию: «8.00-9.00 санобработка «

Ответственный за кабинет

Длина- 40 символов.

Длина- 4 символа.

Маска ввода: 0-00

Таблица «Прием» содержит 10 полей. Поля и свойства полей таблицы приведены в таблице:

Краткий формат даты

Краткий формат времени

(Подстановка; Тип элемента управления- поле со списком)

Источник строк: таблица «Пациенты» (столбец подстановки содержит поля «Номер пациента» и «Фамилия» из таблицы «Пациенты», подставляется поле «Номер пациента».)

(Подстановка; Тип элемента управления- поле со списком)

Источник строк: таблица «Врачи» (столбец подстановки содержит поля «Фамилия», «Специальность» и «График работы» из таблицы «Врачи», подставляется поле «Фамилия»).

(Подстановка; Тип элемента управления- поле со списком)

Источник строк: таблица «Кабинеты» (столбец подстановки содержит поля «Номер», «Режим» из таблицы «Кабинеты», подставляется поле «Номер»).

Длина- 50 символов.

Значение по умолчанию «устанавливается».

Расширенная информация о лечении

Формат поля: Да/Нет

Формат поля- денежный.

Число десятичных знаков- 0

Формат поля: Да/Нет

Тип элемента управления: флажок

4. Схема связей

Для установления связей каждому объекту назначен ключ (ключевое поле для соответствующей таблицы). Причем ключи объектов Пациент, Кабинет и Врач (первичные) должны присутствовать как внешние ключи в объекте Прием, а ключ объект График работы (первичный — его название) -в объекте Врачи.

Все связи имеют тип «один-ко-многим» и обеспечивается целостность данных (рисунок 2).

Рисунок 2 — Отношения 1:? между информационными объектами- связи между таблицами базы данных.

5. Описание запросов

Создадим запросы для обработки информации, содержащейся в таблицах.

Запрос 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-Запрос на удаление полей дополнительной таблицы

6. Описание форм


база данные больница информация

Для облегчения работы с данными в таблицах созданы формы для каждой таблицы.

Форма для таблицы «Графики работы» (рисунок 13) имеет табличный вид и предназначена для удобного просмотра и редактирования данных в таблице.

Рисунок 13- Форма «Графики работы»

Формы для таблицы «Кабинеты», «Пациенты» и «Прием» (рисунки 14-16) отображают данные и позволяют вводить информацию в соответствующую таблицу. Между собой они отличаются только оформлением.

Рисунок 14- Форма «Кабинеты»

Рисунок 15- Форма «Пациенты»

В форму «Прием» дополнительно добавлено поле из таблицы пациента для отображения его фамилии рядом с номером.

Рисунок 16- Форма «Прием»

Форма «Врачи» содержит связанную форму «Прием», что позволяет увидеть информацию о пациентах, которых принимал врач (рисунок 17).

Рисунок 17- Форма «Врачи»

Главная (кнопочная) форма не содержит информацию из таблиц, но с помощью ее кнопок можно переходить по всем объектам базы данных. Создать кнопочную форму можно с помощью диспетчера (Сервис/Служебные программы/ Диспетчер кнопочных форм). Запуск базы данных с формы можно назначить с помощью окна, вызываемого командой Сервис/Параметры запуска.

Рисунок 18- Главная (кнопочная) форма базы данных

7. Описание отчетов

Отчеты базы данных предназначены для вывода данных на печатающее устройство (принтер).

В отчете 1 (приложение 1) выводятся данные о пациентах врача Петрика А.С. со стоимостью лечения. Отчет создан на основе запроса 1. Информация сгруппирована по фамилиям пациентов, представлены промежуточные и основные итоги.

Отчет 2 (приложение 2) создан на основе второго запроса на выборку пациентов с годом рождения после 1987 г., которые посещали отоларингологов.

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

Заключение

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

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

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

Формы отображают информацию из таблиц в удобном виде, а также служат для ввода данных в таблицы.

Отчеты выводят информацию на печать в нужном формате и (при необходимости) с группировкой и итогами .

Таким образом, база может быть использована для увеличения эффективности работы больницы (клиники) путем ускорения таких операций, как запись пациентов на прием, ведение первичной финансовой отчетности, создание и хранение архивной информации о пациентах в удобной для поиска и обработки форме.

Литература


Информатика: Базовый курс / под ред. С. В. Симонович и др. — СПб.: Питер, 2003. — 640 с.


Могилев А.В., Пак Н.И., Хённер Е.К. Информатика. — М.: Академия, 2004. — 848 с.


Microsoft Access 2000: справочник. / Б. Карпов — СПб: Питер, 2001. — 416 с.

База данных Access Поликлиника

Вариант №8 – БД «Поликлиника».

Постановка задачи. Создать базу данных «Поликлиника» содержащую информацию о визитах к докторам.
1) База данных должна содержать следующую информацию:

• Таблицу «Доктора», содержащую следующую информацию о врачах: ФИО доктора, Специальность, Кабинет.
• Таблицу «Поликлиника», содержащую следующую информацию о поликлиниках: Номер поликлиники, Адрес поликлиники, Телефон поликлиники.
• Таблицу «Пациенты», содержащую следующую информацию о пациентах: ФИО пациента, Дата рождения, Контактный телефон.
•Таблицу «Визиты», содержащую следующую информацию о визитах пациентов к врачам: Дата визита, Время визита, Комментарий к визиту.

2) Определить первичные и вторичные (внешние) ключи (если необходимо добавьте поля). Ввод в поля с небольшим набором возможных значений организовывать с помощью полей подстановки, а также предусмотреть маску ввода, где это возможно.
3) Установить связь между таблицами, предусмотрев обеспечение целостности данных, каскадное обновление связанных полей и каскадное удаление связанных записей.
4) Ввести не менее 4 записей в таблицы без внешнего ключа и не менее 10 записей в таблицы, содержащие поле внешнего ключа.
5) Создать следующие запросы, задав для них смысловые имена:

• Запрос на выборку, для отображения информации о пациентах, посетивших окулиста. На экран вывести следующие поля: ФИО доктора, ФИО пациента, Дата визита, Время визита, Комментарий к визиту.
• Запрос на групповые операции, для отображения общего количества посетителей каждого врача. На экран вывести следующие поля: ФИО доктора, Специальность, Общее количество посетителей.
• Параметрический запрос для отображения количества посетителей, посетивших определенную поликлинику, заданную параметром.
• Перекрестный запрос, отображающий информацию о количестве посещений докторов в каждую дату.
• Запрос на создание таблицы, для создания таблицы «Пациенты1»,
содержащей информацию о пациентах, посетивших окулиста или терапевта. Таблица должна содержать следующие поля: ФИО пациента, Дата визита, Время визита, ФИО доктора, Специальность.
• Запрос на добавление в таблицу «Пациенты1» информации о пациентах, посетивших эндокринолога.

6) Создать следующие формы, задав для них смысловые имена:

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

7) Создать отчет, отображающий следующую информацию: Дата визита, Время визита, ФИО доктора, Специальность, ФИО пациента. В нижний колонтитул добавить свою фамилию, номер группы и дату создания базы данных.
8) Создать макросы (шесть макросов) для открытия таблиц базы данных. Задать смысловые имена макросам.
9) Создать форму «Пользовательский интерфейс» в режиме конструктора, позволяющий работать с созданной базой данных. На форме отобразить информацию о названии базы данных и об авторе. Поместить на форме командные кнопки, задав для них смысловые имена, позволяющие открывать таблицы, запросы, формы и отчеты. Оформите запрос с помощью элементов рисования панели элементов.
10) Создать макрос для автоматического открытия формы «Пользовательский интерфейс».

Таблица «Пациенты» — База данных Access Поликлиника

Перекрестный запрос — База данных Access Поликлиника

Форма «Пациенты» — База данных Access Поликлиника

Отчет — База данных Access Поликлиника

Пользовательский интерфейс — База данных Access Поликлиника

Готовая база данных Access Поликлиника доступна для скачивания по ссылке ниже.

Проектирование базы данных «Больница» (стр. 1 из 3)

Министерство образования и науки Республики Казахстан

Карагандинский Государственный Технический Университет

к курсовой работе

«Проектирование баз данных»

«Проектирование базы данных «Больница»

1. Постановка задачи

2. Обоснование выбора СУБД и программного обеспечения

3. Структура базы данных

3.1 Концептуальная модель данных

3.2 Логическая модель данных

4. Нормализация отношений

6. Интерфейс системы для работы с базой данных

6.1 Главное окно программы

6.2 Разработка меню

Список использованной литературы

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

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

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

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

В задачи курсового проекта входят:

1. Разработка структуры баз данных.

2. Работа с несколькими таблицами и установление взаимосвязей между таблицами.

3. Разработка системы меню.

4. Разработка и формирование отчетов.

5. Использование расширенных средств СУБД ввода и вывода данных.

6. Организация справочной системы.

1. Постановка задачи

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

Требования были следующими:

1. База данных должна отражать всю информацию о больнице, в частности о сотрудниках и о пациентах;

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

3. Должна быть возможность вносить изменения в данные и пополнения новыми данными.

4. В программе должна присутствовать функции поиска, выполнения определенных запросов, печати отчетов.

5. Программа должна иметь справочное руководство по использованию базы данных.

2. Обоснование выбора СУБД и программного обеспечения

В качестве средства проектирования базы данных, была выбрана СУБД MS SQL Server 2000.

В отличие от всех остальных наиболее известных СУБД, MSSQLServer имеет ряд преимуществ. Главным из них является то, что он обеспечивает создание информационных систем с архитектурой «клиент-сервер», в которой он играет роль сервера баз данных. Одним из важных свойств MicrosoftSQLServer является возможность управления целостностью данных.

Также можно сказать, что он удовлетворяет требованиям, предъявляемым к системам распределенной обработки информации. Эта СУБД поддерживает: тиражирование данных, параллельную обработку, создание и обработку больших баз данных на недорогих аппаратных платформах, отличается простотой управления и использования.

Средством, связывающим клиента с сервером, является язык SQL (Structured Query Language) – язык структурированных запросов. В данном курсовом проекте были использованы основные операторы этого языка, в частности для создания запросов. Этот язык является очень распространенным на данный момент и имеет ряд особенностей.

• создавать базы данных и таблицы с полным описанием их структуры;

• выполнять основные операции манипулирования данными, такие как

вставка, модификация и удаление данных из таблиц;

• выполнять простые и сложные запросы.

Этот язык был выбран, так как он доступен для изучения, синтаксис команд понятен и прост.

В качестве среды разработки самой программы для работы с базой данных была выбрана среда программирования BorlandDelphi 7, использующая язык программирования ObjectPasсal.

Основные причины выбора языка ObjectPascal:

– Главной из причин является возможность работы с базами данными;

– Легкость в организации доступа к базе данных;

– Возможность редактирования таблиц, вставки и удаления записей;

– Возможность создания достаточно понятного и дружественного интерфейса для пользователя.

– Простота языка позволяет быстро его освоить и создавать сложные программы;

Также, на выбор ObjectPascal в качестве базового программного обеспечения, повлияли такие обстоятельства как, достаточное количество необходимой литературы по программированию в этой среде, распространенность этой среды и имеющийся достаточный опыт работы в ней.

3. Структура базы данных

3.1 Концептуальная модель

Основным объектом в рассматриваемой модели является больница. У больницы есть свои характеристики: заведующий больницей, адрес, название. Она представлена в виде составляющих ее отделений, которые тоже имеют ряд характеристик: заведующий отделением, название отделение, старшая медсестра.

В каждом отделении имеются сотрудники и пациенты, которые имеют свои личные данные.

Концептуальная модель базы данных представлена на рисунке 3.1.

Рисунок 3.1 – Концептуальная модель базы данных

3.2 Логическая модель базы данных

Логическая модель представлена на рисунке 3.2.

Рисунок 3.2 – Логическая модель базы данных

В базе данных имеется 9 таблиц. Первая самая главная таблица «Отделения», которая является главной для таблиц «Персонал», «Пациенты» и «Диагнозы», с которыми она связана по полю «Код отделения» и имеет место связь «1-ко многим». В свою очередь таблица «Персонал» является главной для таблицы «Процедуры», которая связана по полю «Код медсестры», связь также «1-ко многим».

Две таблицы «Диагноз-Лекарства» и «Диагноз-Процедуры» имеют составные ключи и связаны с двумя таблицами, по коду диагноза с таблицей «Диагнозы» и по коду лекарства и процедуры с таблицами «Лекарства» и «Процедуры» соответственно. Получилась связь «многие – ко многим». Такая связь нужна, для того чтобы можно было для одного диагноза выбрать много процедур и лекарств. Соответственно, для процедур и лекарств могут соответствовать много диагнозов.

4. Нормализация отношений

Нормализация – это процесс проектирования базы данных с целью исключения аномалий модификаций, избыточности данных и приведения отношений к нормальным формам.

Аномалии модификации – последствия, которые могут возникнуть вследствие изменения отношения (таблицы).

Аномалии устраняются путем разбиения отношения на 2 и более новых отношений. Аномалии делятся на 2 основных вида: аномалия удаления, аномалия вставки.

Можно сказать, что в данном курсовом проекте все таблицы находятся в 1НФ, так как все они удовлетворяют требованиям, необходимым для того, чтобы таблица считалась отношением. Главным образом, это требование атомарности.

Отношение находится во 2НФ, если оно находится в 1НФ и все неключевые атрибуты в отношении зависят только от всего ключа в целом.

Принадлежность к 2НФ всех таблиц, кроме двух таблиц («Диагноз-Процедуры», «Диагноз-Лекарства»), можно определить по наличию 1 первичного простого ключа, состоящего из одного атрибута. А эти две таблицы состоят только из двух ключевых атрибутов, т.е. первичный ключ является составным. Таким образом, в этих таблицах нет неключевых атрибутов, независящих от всего ключа в целом.

Отношение находится в 3НФ, если отношение находится во 2НФ и не имеет транзитивных зависимостей.

В данном курсовом проекте все таблицы находятся в 3НФ. Хотя в начале курсового проекта предполагалось, что таблица «Персонал» будет включать в себя атрибуты «Должность» и «Оклад», что говорило бы о наличие транзитивной зависимости. В результате нормализации таблица «Персонал» была разбита на два отношения «Персонал» и «Должности», которые теперь находятся в 3НФ.

Отношение находится в НФБК, если оно находится в 3НФ и каждый детерминант является ключом-кандидатом.

Можно сказать, что во всех таблицах данной базы данных, кроме первичных ключей ключей-кандидатов не наблюдается, поэтому нельзя сказать, что они находятся в НФБК.

В 4НФ таблицы не могут находиться, так как они не находятся в НФБК.

Таким образом, все отношения находятся в 3НФ.

В данном курсовом проекте были выполнены следующие запросы:

Читать еще:  Запись макроса в access
Ссылка на основную публикацию
Adblock
detector