
Диплом_1 / Диплом
.pdf2.5.5.Oracle Database
Oracle Database 10g[11] - первая в мире база данных, разработанная
специально для работы в сетях распределенных вычислений. Oracle Database 10g предназначена для эффективного развертывания на базе различных типов оборудования, от небольших серверов до Oracle Enterprise Grid
мощных многопроцессорных серверных систем, от отдельных кластеров до корпоративных распределенных вычислительных систем. Oracle Database 10g
предоставляет возможность автоматической настройки и управления,
которая делает ее использование простым и экономически выгодным. Ее уникальные возможности осуществлять управление всеми данными предприятия - от обычных операций с бизнес-информацией до динамического многомерного анализа данных (OLAP), операций с документами формата XML, управления распределенной/локальной информацией - делает ее идеальным выбором для выполнения приложений,
обеспечивающих обработку оперативных транзакций, интеллектуальный анализ информации, хранение данных и управление информационным наполнением.
Oracle Database 10g позволяет пользователям виртуализировать использование аппаратного обеспечения - серверов и систем хранения данных. Oracle Database 10g обладает технологиями, которые позволяют администраторам надежно хранить и быстро распределять и извлекать данные для пользователей и приложений, работающих в сетях Grid. Oracle Database 10g значительно повышает производительность обработки данных и включает в себя удобные средства администрирования.
20
2.5.6. Выводы
Клиент-серверный вариант работы с информационной базой предназначен для использования в рабочих группах или в масштабе предприятия. Он реализован на основе трехуровневой архитектуры «клиент-
сервер». Программа, работающая у пользователя, (клиентское приложение)
взаимодействует с кластером серверов 1С: Предприятия 8, а кластер, при необходимости, обращается к серверу баз данных (MS SQL
Server, PostgreSQL, IBM DB2, Oracle Database.). При этом физически кластер серверов 1С:Предприятия 8 и сервер баз данных могут располагаться как на одном компьютере, так и на разных. Недостаток клиент-серверного варианта работы в необходимости работы с СУБД сторонних поставщиков, а это дополнительные расходы. Клиент-серверные СУБД требуют больших вычислительных ресурсов, потребляемых сервером.
В рамках решаемой задачи реализуется однопользовательская система,
работающая на локальном компьютере. Поэтому для решения данной задачи более всего подходит файловая СУБД.
Файловый вариант 1С: Предприятия 8 обеспечивает высокую целостность информационной базы и простое создание резервных копий.
Исключена ситуация, когда пользователь может по ошибке (например, при копировании информационной базы) перепутать различные файлы информационной базы и привести, таким образом, систему в неработоспособное состояние. Кроме этого резервное копирование может осуществляться на файловом уровне, путем простого копирования файла информационной базы. С такой задачей справится обычный медицинский работник, без привлечения администратора.
21
3. Решение задачи
3.1. Проектирование базы данных талонов на законченный
случай
3.1.1.Инфологическая модель данных
На основании требований предъявляемых к системе информационная
база системы была спроектирована на основе единой базы данных для всех задач с применением методов реляционного моделирования. Основным методом, использованным при проектировании базы данных, стал метод
«сущность-связь».
Вмодели можно выделить следующие сущности:
Талоны_пациентов;
ЛПУ;
Отделения_ЛПУ;
Врачи;
Предприятия;
Цеха;
Группы_диагнозов;
Диагнозы;
Численность_работающих;
Причины_нетрудоспособности;
Причины_нетрудоспособности_по_возрастам.
Каждая сущность имеет свой набор атрибутов. Рассмотрим все сущности по отдельности.
«Талоны_пациентов» имеет следующие атрибуты:
1.Код_ЛПУ;
2.Код_Отделения;
3.ФИО;
4.Дата_рождения;
5.Возраст;
22
6.Пол;
7.Код_Предприятия;
8.Код_Цеха;
9.Код_Диагноза;
10.Наименование_группы_диагнозов;
11.Код_врача_открывшего_б/л;
12.Код_врача_закрывшего_б/л;
13.Дата_открытия_б/л;
14.Дата_закрытия_б/л;
15.Количество_дней_нетрудоспособности;
16.Дни. «ЛПУ»:
1.Код_ЛПУ;
2.Наименование_ЛПУ;
3.Принадлежность.
«Отделения_ЛПУ»:
1.Код_ЛПУ;
2.Код _Отделения;
3.Наименование_отделения. «Врачи»:
1.Код_ЛПУ;
2.Код_Отделения;
3.Код_Врача;
4.Фамилия И.О. «Предприятие»:
1.Наименование_предприятия;
2.Код_Предприятия.
«Цеха»:
1.Код_Предприятия;
2.Код_Цеха;
23
3. Наименование_цеха. «Группы_диагнозов»:
1.Начальный_код_группы_диагнозов;
2.Конечный_код_группы_диагнозов;
3.Наименование_группы_диагноза.
«Диагнозы»:
1.Код_Диагноза;
2.Наименование_группы_диагнозов;
3.Наименование_диагноза.
«Численность_работающих»:
1.Год;
2.Код_Предприятия;
3.Код_Цеха;
4.Численность_работающих_мужчин;
5.Численность_работающих_женщин. «Причины_нетрудоспособности»
1.Код_ЛПУ;
2.Код_Предприятия;
3.Код_Цеха;
4.Код_Диагноза;
5.Случаи;
6.Дни.
«Причины_нетрудоспособности_по_возрастам»
1.Код_ЛПУ;
2.Код_Отделения;
3.Код_Предприятия;
4.Код_Цеха;
5.Код_Диагноза;
6.Дата_ввода;
7.Дата_закрытия_бл;
24
8.Пол;
9.Возраст;
10.Случаи;
11.Дни.
Описанные сущности образуют связи, описанные в таблице 3.1.
Таблица 3.1. Связи между сущностями
Сущность |
Тип связи |
Сущность |
|
|
|
Талон_пациента |
«многие к одному» |
ЛПУ |
|
|
|
Талон_пациента |
«многие к одному» |
Отделения_ЛПУ |
|
|
|
Талон_пациента |
«многие к одному» |
Врачи |
|
|
|
Талон_пациента |
«многие к одному» |
Предприятия |
|
|
|
Талон_пациента |
«многие к одному» |
Цеха |
|
|
|
Талон_пациента |
«многие к одному» |
Группы_диагнозов |
|
|
|
Талон_пациента |
«многие к одному» |
Диагнозы |
|
|
|
Талон_пациента |
«многие к одному» |
Причины_нетрудоспособности |
|
|
|
Талон_пациента |
«многие к одному» |
Причины_нетрудоспособности_по |
|
|
_возростам |
|
|
|
ЛПУ |
«Один ко многим» |
Отделения_ЛПУ |
|
|
|
ЛПУ |
«Один ко многим» |
Врачи |
|
|
|
Отделения_ЛПУ |
«Один ко многим» |
Врачи |
|
|
|
Предприятия |
«Один ко многим» |
Цеха |
|
|
|
Предприятие |
«Один к одному» |
Численность_работающих |
|
|
|
Цеха |
«Один к одному» |
Численность_работающих |
|
|
|
Группы_диагнозов |
«Один ко многим» |
Диагнозы |
|
|
|
На рисунке 3.1. представлена инфологическая модель данных, разработанная
при помощи ERWin V4.0 (c) Computer Associates.
25

Рис. 3.1. Инфологическая модель данных
26
3.1.2.Даталогическая модель данных
На основе инфологической модели была разработана даталогическая
модель.
Для хранения экземпляров выделенных сущностей создана база данных со структурой, приведѐнной ниже (таблицы 3.2, 3.3, 3.4, 3.5, 3.6, 3.7, 3.8, 3.9,
3.10, 3.11, 3.12). Каждой сущности предметной области соответствует одна таблица базы данных. Для отображения связи между сущностями (типа
«один ко многим») в подчиненную таблицу добавляется идентификатор
(первичный ключ) главной таблицы.
|
Таблица 3.2. «Талоны_пациентов» |
|
|
|
|
Имя поля |
|
Тип данных |
|
|
|
Номер_талона |
|
Счетчик |
|
|
|
Код_Отделения |
|
Числовой |
|
|
|
Код_Предприятия |
|
Числовой |
|
|
|
Код_Цеха |
|
Числовой |
|
|
|
ФИО |
|
Текстовый |
|
|
|
Дата_рождения |
|
Дата/время |
|
|
|
Пол |
|
Символьный |
|
|
|
Код_Диагноза |
|
Символьный |
|
|
|
Наименование_группы_диагнозов |
|
Текстовый |
|
|
|
Код_врача_открывшего_бл |
|
Числовой |
|
|
|
Код_врача_закрывшего_бл |
|
Числовой |
|
|
|
Дата_открытия_бл |
|
Дата/время |
|
|
|
Дата_закрытия_бл |
|
Дата/время |
|
|
|
Случаи |
|
Числовой |
|
|
|
Код_ЛПУ |
|
Числовой |
|
|
|
Возраст |
|
Числовой |
|
|
|
Дни |
|
Числовой |
|
|
|
27
|
|
Таблица 3.3. «ЛПУ» |
|
|
|
Имя поля |
|
Тип данных |
|
|
|
Код_ЛПУ |
|
Числовой |
|
|
|
Наименование_ЛПУ |
|
Текстовый |
|
|
|
Принадлежность |
|
Символьный |
|
|
|
|
|
Таблица 3.4. «Отделения_ЛПУ» |
|
|
|
Имя поля |
|
Тип данных |
|
|
|
Код_Отделения |
|
Числовой |
|
|
|
Код_ЛПУ |
|
Числовой |
|
|
|
Название_отделения |
|
Текстовый |
|
|
|
|
|
Таблица 3.5. «Врачи» |
|
|
|
Имя поля |
|
Тип данных |
|
|
|
Код_ЛПУ |
|
Числовой |
|
|
|
Код_Отделения |
|
Числовой |
|
|
|
Код_Врача |
|
Числовой |
|
|
|
ФИО |
|
Текстовый |
|
|
|
|
Таблица 3.6. «Группы_диагнозов» |
|
|
|
|
Имя поля |
|
Тип данных |
|
|
|
Наименование_группы_диагнозов |
|
Текстовый |
|
|
|
Начальный_код_группы_диагнозов |
|
Числовой |
|
|
|
Конечный_код_группы_диагнозов |
|
Числовой |
|
|
|
|
|
Таблица 3.7. «Диагнозы» |
|
|
|
Имя поля |
|
Тип данных |
|
|
|
Наименование_группы_диагнозов |
|
Текстовый |
|
|
|
Код_Диагноза |
|
Числовой |
|
|
|
Наименование_диагноза |
|
Текстовый |
|
|
|
28
|
Таблица 3.8. «Предприятия» |
|
|
Имя поля |
Тип данных |
|
|
Код_Предприятия |
Числовой |
|
|
Наименование_предприятия |
Текстовый |
|
|
|
Таблица 3.9. «Цеха» |
|
|
Имя поля |
Тип данных |
|
|
Код_Предприятия |
Числовой |
|
|
Код_Цеха |
Числовой |
|
|
Наименование_цеха |
Текстовый |
|
|
Таблица 3.10. «Численность_работающих» |
|
|
|
Имя поля |
Тип данных |
|
|
Код_Предприятия |
Числовой |
|
|
Код_Цеха |
Числовой |
|
|
Численность_работающих_мужчин |
Числовой |
|
|
Численность_работающих_женщин |
Числовой |
|
|
Таблица 3.11. «Причины_нетрудоспособности» |
|
|
|
Имя поля |
Тип данных |
|
|
Номер_талона |
Счетчик |
|
|
Код_Предприятия |
Числовой |
|
|
Код_Цеха |
Числовой |
|
|
Код_Диагноза |
Символьный |
|
|
Случаи |
Числовой |
|
|
Код_ЛПУ |
Числовой |
|
|
Дни |
Числовой |
|
|
29