где 250 – количество рабочих дней в году, а 12 мес./2 мес. = 6. Объём памяти
будет увеличиваться ежегодно на столько же при сохранении объёма работы.
Объём памяти, занимаемый программными модулями пользователя,
обычно невелик по сравнению с объёмом самих данных, поэтому может не
учитываться. Требуемый объём оперативной памяти определяется на основа-
нии анализа интенсивности запросов и объёма результирующих данных.
3. Выбор СУБД и других программных средств
Анализ информационных задач показывает, что для реализации требуе-
мых функций подходят почти все СУБД для ПЭВМ (FoxPro, Clipper, MS Access
и др.). Все они поддерживают реляционную модель данных и предоставляют
разнообразные возможности для работы с данными.
14
Объём внешней и оперативной памяти, требующийся для функциониро-
вания СУБД, обычно указывается в сопроводительной документации.
Я выбрала СУБД FOXPRO.
4. Логическое проектирование реляционной БД
4.1. Нормализация полученных отношений (до 4НФ)
1НФ. Для приведения таблиц к 1НФ необходимо, чтобы все атрибуты
были атомарны. Для этого необходимо разбить сложные атрибуты на простые,а многозначные атрибуты вынести в отдельные отношения.
Примечание: В реальных БД сложные атрибуты разбиваются на простые, если:
а) этого требует внешнее представление данных;
б) в запросах поиск может осуществляться по отдельной части атрибута.
Разделим атрибуты Фамилия Имя Отчество на три атрибута Фамилия,
Имя, Отчество.
2НФ. В нашем случае составные первичные ключи имеют отношения
Процедуры, Палаты, Лечение. Неключевые атрибуты этих отношений функционально полно зависят от первичных ключей.
3НФ. В отношении Диагноз атрибут код лечения зависит от кода диагноза,поэтому код лечение следует вынести в отдельное отношениет Лечение.
4НФ. Отношения данного примера не нарушают 4НФ, т.к. не содержат
нетривиальных многозначных зависимостей.
После проведённых преобразований схема БД выглядит так (рис. 1.3):
| Код отделенияКол-во палатЭтаж |
| |
R12
R16
| ID-леченияID-пац_стационара |
Процедуры
Рис. 1.3. Окончательная ER-модель БД больницы
| Название объекта | Обозначе-ниеобъекта | Количе-ствоэкземп-ляров | Про-центизме-нений | Ограни-чениедоступа | Связанныеобъекты | Примечания |
| Пациенты | Пациенты | 100 | 20% | больница | Пац_стационар,Прием | |
| Прием | Прием | 200 | 20% | больница | Пациенты,диагноз,врачи | |
| Стационар | Стационар | 400 | 30% | больница | Пац_стационар,врачи,палаты | |
| Диагноз | Диагноз | 100 | 10% | больница | Прием,лечение | |
| Врачи | Врачи | 300 | 20% | больница | Прием,стационар | |
| Пац_стационар | Пац_стационар | 100 | 30% | больница | Процедуры,палаты,пациенты,стационар | |
| Лечение | Лечение | 100 | 20% | больница | Диагноз,процедуры | |
| Палаты | Палаты | 400 | 20% | больница | Стационар,пац_стационар | |
| Процедуры | Процедуры | 100 | 10% | больница | Пац_стационар,лечение |
В таблице 1.11 приведено уточненное описание связей.
Таблица 1.11
Таблица описания связей
| Название связи | Обозначение связи | Главный объект | Связанный объект | Вид связи | Условие связи | Способ реализации | Примечание |
| имеет | R1 | Прием | Врачи | М:1 | По коду врача | ||
| имеет | R2 | Врачи | Прием | 1:М | По коду врача | ||
| записывает | R3 | Пациенты | Прием | 1:М | По коду пациента | ||
| записываются | R4 | Прием | Пациенты | М:1 | По коду пациента | ||
| имеются | R5 | Пациенты | Пац_стационар | 1:М | По коду пациента | ||
| имеют | R6 | Пац_стационар | Пациенты | М:1 | По коду пациента | ||
| записывает | R7 | Прием | Диагноз | М:1 | По коду диагноза | ||
| записывается | R8 | Диагноз | Прием | 1:М | По коду диагноза | ||
| имеет | R9 | Врачи | Стационар | М:1 | По коду отделения | ||
| имеются | R10 | Стационар | Врачи | 1:М | По коду отделения | ||
| имеют | R11 | Врачи | Палаты | 1:М | По коду отделения | ||
| имеются | R12 | Палаты | врачи | М:1 | По коду отделения | ||
| содержит | R13 | Диагноз | Лечение | М:1 | По коду лечения | ||
| содержится | R14 | Лечение | Диагноз | 1:М | По коду лечения | ||
| имеются | R15 | Пац_стационар | Процедуры | M:1 | По коду пац_стационара | ||
| имеются | R16 | Процедуры | Пац_стационар | 1:M | По коду пац_стационара | ||
| содержит | R17 | Пац_стационар | Палаты | М:1 | По коду номера палаты | ||
| содержатся | R18 | палаты | Пац_стационар | 1:М | По коду номера палаты | ||
| содержит | R19 | Процедуры | Лечение | М:1 | По коду лечения | ||
| содержится | R20 | лечение | процедуры | 1:М | По коду лечения |
Окончательные схемы отношений базы данных с указанием ключей и