Реферат: Разработка программного обеспечения для Отделения Реанимации и Интенсивной Терапии новорожденных МГБ N1 г. Сургута

Министерство общего и профессионального образования РФ

Сургутский государственный университетФакультетинформационных технологий

Кафедра информатики и вычислительной техники

Дипломная работа

На тему

«Разработка программного обеспечения для Отделения Реанимациии Интенсивной Терапии НоворожденныхприМуниципальной Городской Больнице № 1 города Сургута»

Выполнил:  Юрий В. Гудонис

Руководитель:Челноков С. Б.

Рецензент:  Шепелев А.С.

Сургут1998г.

Содержание

 

Введение 4

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

5

Основы современных баз данных

6

1.<span Times New Roman"">    

Базы данных и файловые системы

6

1.1. Файловые системы

8

1.1.1.<span Times New Roman"">             

Структуры файлов

9

1.1.2.<span Times New Roman"">             

Именование файлов

11

1.1.3.<span Times New Roman"">             

Защита файлов

13

1.1.4.<span Times New Roman"">             

Режим многопользовательского доступа

14

1.2.<span Times New Roman"">        

Области применения файлов

15

1.3.<span Times New Roman"">        

Потребности информационных систем

16

2.<span Times New Roman"">    

Функции СУБД. Типовая организация СУБД. Примеры

21

2.1.<span Times New Roman"">        

Основные функции СУБД

22

2.1.1.<span Times New Roman"">             

Непосредственное управление данными во внешней памяти

22

2.1.2.<span Times New Roman"">             

Управление буферами оперативной памяти

22

2.1.3.<span Times New Roman"">             

Управление транзакциями

23

2.1.4.<span Times New Roman"">             

Журнализация

24

2.1.5.<span Times New Roman"">             

Поддержка языков БД

27

2.2.<span Times New Roman"">        

Типовая организация современной СУБД

29

3.<span Times New Roman"">    

Ранние подходы к организации БД. Системы, основанные на инвертированных списках, иерархические и сетевые СУБД. Примеры. Сильные места и недостатки ранних систем

31

3.1.<span Times New Roman"">        

Основные особенности систем, основанных на инвертированных списках

33

3.1.1.<span Times New Roman"">             

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

33

3.1.2.<span Times New Roman"">             

Манипулирование данными

34

3.1.3.<span Times New Roman"">             

Ограничения целостности

35

3.2.<span Times New Roman"">        

Иерархические системы

35

3.2.1.<span Times New Roman"">             

Иерархические структуры данных

35

3.2.2.<span Times New Roman"">             

Манипулирование данными

37

3.2.3.<span Times New Roman"">             

Ограничения целостности

37

3.3. Сетевые системы

38

3.3.1. Сетевые структуры данных

38

3.3.2.<span Times New Roman""> 

Манипулирование данными

40

3.3.3.<span Times New Roman""> 

Ограничения целостности

41

3.3.4.<span Times New Roman""> 

Достоинства и недостатки

41

Теоретические основы

41

4.<span Times New Roman"">             

Общие понятия реляционного подхода к организации БД. Основные концепции и термины

43

4.1.<span Times New Roman"">        

Базовые понятия реляционных баз данных

44

4.1.1.<span Times New Roman""> 

Тип данных

44

4.1.2.<span Times New Roman"">     

Домен

45

4.1.3.<span Times New Roman""> 

Схема отношения, схема базы данных

45

4.1.4.<span Times New Roman""> 

Кортеж, отношение

46

5.<span Times New Roman"">      

Методы использованные для решения задачи.

48

6.<span Times New Roman"">      

Открытая архитектура Delphi

48

7.<span Times New Roman"">      

Полученные результаты

56

8.<span Times New Roman"">      

Модуль «Администратор программы «ОРИТН в порядке»»

58

9.<span Times New Roman"">      

Заключение

62

10.<span Times New Roman""> 

Литература

63

12. Приложение 1 «Задание на дипломное проектирование»

64

13. Приложение 2 Исходные тексты программы Модуль «Администратор программы «ОРИТН в порядке»»

65

<span Times New Roman",«serif»; mso-fareast-font-family:«Times New Roman»;mso-ansi-language:RU;mso-fareast-language: KO;mso-bidi-language:AR-SA">

Введение

         

ОтделениеРеанимации Новорожденных  уже в течениесеми лет занимается спасением жизней еще не познавших самой жизни младенцев.Демографическая ситуация нашего региона достаточно благополучная. Рождаемостьгод от года не только не падает но еще и растет, но тяжелые условия крайнегосевера и постоянно ухудшающиеся условия окружающей среды вносят свои коррективыв полноценность подростающего поколения. За период с 1991 года количествопоступающих в отделение ежегодно детей возросло почти в два раза,  соответственно возрос и поток информациинеобходимой для создания и анализа статистических отчетов. До последнеговремени ввод и анализ данных производился практически вручную, что называетсяна пальцах. Не существовало единого стандарта на отчеты, что затрудняло анализданных необходимых для принятия правильных решений в выборе методов лечения.Сургутское отделение ОРИТН на сегодняшний день является лучшим по России, чтопозволило принять его “столицей” в данной области медицины. По этому наотделение возложена обязанность по стандартизации исходных данных и отчетов. С1996 года в Сургуте функционирует окружной учебно-консультативный центр на базеотделения ОРИТН МГБ №1. Основной задачей центра является повышение квалификацииврачей и консультативно-методическая помощь. Создание на основе сети Интернетстатистического сервера в городе Сургуте на который будет стекаться информациясо всего региона,  позволит центрупрактически молниеносно разрешить любую проблему, с которой к нему обращаютсяврачи всего региона.   За основу даннойсистемы будет взята модель АСУ построенная нами в ходе дипломногопроектирования.

<span Times New Roman",«serif»;mso-fareast-font-family: «Times New Roman»;color:red;mso-ansi-language:RU;mso-fareast-language:RU; mso-bidi-language:AR-SA;layout-grid-mode:line">

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

Разработкамодели АСУ ОРИТН. Реализация модели АСУ ОРИТН на языке Delphi корпорации Inprise. Внедрение программного продукта.

<span Times New Roman",«serif»;mso-fareast-font-family: «Times New Roman»;color:red;mso-ansi-language:RU;mso-fareast-language:RU; mso-bidi-language:AR-SA;layout-grid-mode:line">

Основысовременных баз данных

         

Базы данных и файловые системы

Рассмотримобщий смысл понятий БД и СУБД. Начнем с того, что с самого начала развитиявычислительной техники образовались два основных направления ее использования.Первое направление — применение вычислительной техники для выполнения численныхрасчетов, которые слишком долго или вообще невозможно производить вручную.Становление этого направления способствовало интенсификации методов численногорешения сложных математических задач, развитию класса языков программирования,ориентированных на удобную запись численных алгоритмов, становлению обратнойсвязи с разработчиками новых архитектур ЭВМ.

Второенаправление, которое непосредственно касается темы нашего дипломного проекта,это использование средств вычислительной техники в автоматических илиавтоматизированных информационных системах. В самом широком смыслеинформационная система представляет собой программный комплекс, функциикоторого состоят в поддержке надежного хранения информации в памяти компьютера,выполнении специфических для данного приложения преобразований информации и/иливычислений, предоставлении пользователям удобного и легко осваиваемогоинтерфейса. Обычно объемы информации, с которыми приходится иметь дело такимсистемам, достаточно велики, а сама информация имеет достаточно сложнуюструктуру. Классическими примерами информационных систем являются банковскиесистемы, системы резервирования авиационных или железнодорожных билетов, мест вгостиницах и т.д.  Не является исключениеми разработанная нами система «ОРИТН».

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

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

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

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

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

1.1.Файловые системы

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

Перваяразвитая файловая система была разработана фирмой IBM для ее серии 360. Кнастоящему времени она очень устарела, и мы не будем рассматривать ее подробно.Заметим лишь, что в этой системе поддерживались как чисто последовательные, таки индексно-последовательные файлы, а реализация во многом опиралась навозможности только появившихся к этому времени контроллеров управлениядисковыми устройствами. Если учесть к тому же, что понятие файла в OS/360 быловыбрано как основное абстрактное понятие, которому соответствовал любой внешнийобъект, включая внешние устройства, то работать с файлами на уровнепользователя было очень неудобно. Требовался целый ряд громоздких иперегруженных деталями конструкций. Все это хорошо знакомо программистамсреднего и старшего поколения, которые прошли через использование отечественныханалогов компьютеров IBM.

1.1.1.Структуры файлов

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

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

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

В некоторыхфайловых системах базовый уровень доступен пользователю, но более частоприкрывается некоторым более высоким уровнем, стандартным для пользователей.Распространены два основных подхода. При первом подходе, свойственном,например, файловым системам операционных систем фирмы DEC RSX и VMS, пользователи представляют файл какпоследовательность записей. Каждая запись — это последовательность байтовпостоянного или переменного размера. Записи можно читать или записыватьпоследовательно или позиционировать файл на запись с указанным номером.Некоторые файловые системы позволяют структурировать записи на поля и объявлятьнекоторые поля ключами записи. В таких файловых системах можно потребоватьвыборку записи из файла по ее заданному ключу. Естественно, что в этом случаефайловая система поддерживает в том же (или другом, служебном) базовом файледополнительные, невидимые пользователю, служебные структуры данных.Распространенные способы организации ключевых файлов основываются на техникекэширования и B-деревьев. Существуют и много ключевые способы организациифайлов.

Второйподход, ставший распространенным вместе с операционной системой UNIX, состоит втом, что любой файл представляется как последовательность байтов. Из файламожно прочитать указанное число байтов либо начиная с его начала, либопредварительно произведя его позиционирование на байт с указанным номером.Аналогично, можно записать указанное число байтов в конец файла, либопредварительно произведя позиционирование файла. Заметим, что тем не менее скрытымот пользователя, но существующим во всех разновидностях файловых систем ОС UNIX, является базовоеблочное представление файла.

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

1.1.2.Именование файлов

Остановимсякоротко на способах именования файлов. Все современные файловые системы поддерживаютмногоуровневое именование файлов за счет поддержания во внешней памятидополнительных файлов со специальной структурой — каталогов. Каждый каталогсодержит имена каталогов и/или файлов, содержащихся в данном каталоге. Такимобразом, полное имя файла состоит из списка имен каталогов плюс имя файла вкаталоге, непосредственно содержащем данный файл. Разница между способамиименования файлов в разных файловых системах состоит в том, с чего начинаетсяэта цепочка имен.

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

Другойкрайний вариант был реализован в файловых системах операционной системы Multics. Эта системазаслуживает отдельного большого разговора, в ней был реализован целый рядоригинальных идей, но мы остановимся только на особенностях организации архивафайлов. В файловой системе Milticsпользователи представляли всю совокупность каталогов и файлов как единоедерево. Полное имя файла начиналось с имени корневого каталога, и пользовательне обязан был заботиться об установке на дисковое устройство каких-либоконкретных дисков. Сама система, выполняя поиск файла по его имени, запрашивалаустановку необходимых дисков. Такую файловую систему можно назвать полностьюцентрализованной.

Конечно, вомногом централизованные файловые системы удобнее изолированных: системауправления файлами принимает на себя больше рутинной работы. Но в такихсистемах возникают существенные проблемы, если кому-то требуется перенестиподдерево файловой системы на другую вычислительную установку. Компромиссноерешение применено в файловых системах ОСUNIX. На базовом уровне в этих файловых системах поддерживаютсяизолированные архивы файлов. Один из этих архивов объявляется корневой файловойсистемой. После запуска системы можно «смонтировать» корневуюфайловую систему и ряд изолированных файловых систем в одну общую файловуюсистему. Технически это производится с помощью заведения в корневой файловойсистеме специальных пустых каталогов. Специальный системный вызов курьер ОС UNIX позволяет подключитьк одному из этих пустых каталогов корневой каталог указанного архива файлов.После монтирования общей файловой системы именование файлов производится также, как если бы она с самого начала была централизованной. Если учесть, чтообычно монтирование файловой системы производится при раскрутке системы, топользователи ОС UNIXобычно и не задумываются об исходном происхождении общей файловой системы.

1.1.3.Защита файлов

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

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

1.1.4.Режим многопользовательского доступа

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

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

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

1.2.Области применения файлов

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

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

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

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

1.3.Потребности информационных систем

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

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

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

Предположим,что мы решили основывать эту информационную систему на файловой системе ипользоваться при этом одним файлом, расширив базовые возможности файловойсистемы за счет специальной библиотеки функций. Поскольку минимальнойинформационной единицей в нашем случае является сотрудник, естественнопотребовать, чтобы в этом файле содержалась одна запись для каждого сотрудника.Какие поля должна содержать такая запись? Полное имя сотрудника (СОТР_ИМЯ),номер его удостоверения (СОТР_НОМЕР), информацию о его соответствии занимаемойдолжности (для простоты, «да» или «нет») (СОТР_СТАТ), размерзарплаты (СОТР_ЗАРП), номер отдела (СОТР_ОТД_НОМЕР). Поскольку мы хотимограничиться одним файлом, та же запись должна содержать имя руководителяотдела (СОТР_ОТД_РУК).

Функциинашей информационной системы требуют, чтобы обеспечивалась возможность многоключевого доступа к этому файлу по уникальным ключам (не дублируемым в разныхзаписях) СОТР_ИМЯ и СОТР_НОМЕР. Кроме того, должна обеспечиваться возможностьвыбора всех записей с общем значением СОТР_ОТД_НОМЕР, то есть доступ понеуникальному ключу. Для того, чтобы получить численность отдела или общийразмер зарплаты, каждый раз при выполнении такой функции информационная системадолжна будет выбрать все записи о сотрудниках отдела и посчитатьсоответствующие общие значения.

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

еще рефераты
Еще работы по программированию, базе данных