Использование объектно-ориентированного программирования при создании приложений для работы с базами данных



Введение 3
1 Основные понятия в области баз данных и систем управления базами данных
1.1 История развития баз данных 5
1.2 Основные понятия теории баз данных 13
1.3 Классификация баз данных и систем управления базами данных 23
2 Создание базы данных в среде объектно.ориентированного программирования Delphi
2.1 Основные аспекты создания базы данных в Delphi 31
2.2 Механизмы управления данными 40
2.3 Компоненты отображения данных 46
Заключение 58
Список использованной литературы 60
Приложение
В последнее время значительно возрос объем и оборот информации во всех сферах жизнедеятельности человека. Процесс накопления, обработки и использования информации постоянно ускоряется.
Традиционно информация хранится на бумажных носителях. При этом трудно осуществить быстрый отбор нужных данных. В связи с этим возникает необходимость использования средств автоматизации и управления большими объемами информации, позволяющих эффективно хранить, обрабатывать и распределять накопленные данные. Сейчас много программ и приложений, которые облегчают работу человеку, так как с появлением компьютеров, человек отходит на второй план.
Проблема автоматизации производственных процессов и процессов управления как средства повышения производительности труда всегда являлась и остается актуальной. Необходимость автоматизации управления объясняется задачами облегчения труда управленческого персонала, сдерживанием роста его численности, вызываемым развитием производства; усложнением производственных связей; увеличением объемов управленческой функции. Важную роль играет задача соответствия технической базы управления аналогичной базе производства, в отношении которого производится автоматизация.
Для принятия эффективных управленческих решений в условиях динамичного развития рыночной экономики предприятию требуется целесообразная система информационного обеспечения, объективно отражающая сложившуюся экономическую ситуацию.
Автоматизированные системы это залог успеха любой организации в управленческой деятельности, огромная помощь по ведению документов, контроль над исполнением приказов, а также организация коммуникационных процессов как внутри офиса, так и с внешней средой.
В современном мире практически в любой сфере деятельности огромную роль играет использование систем управления базами данных. При внедрении данных систем наблюдается резкое повышение производительности за счет удобства использования и автоматизации работы. Системы управления базами данных основываются на компьютерных технологиях и программном обеспечении.
Основная задача систем управления базами данных – это перевод всех информационных процессов производства в электронный вид с последующим его использованием в рабочей деятельности.
1 Карпова Т.С. Базы данных: модели, разработка. - СПб.: Питер, 2001, 304 с.
2 Кренке Д. Теория и практика построения баз данных: [пер.с англ] / Д. Кренке. - 9 - е изд. - СПб.: Питер, 2005. - 858 с.
3 Четвериков В.Н. и др. Базы и банки данных. - М.: Высш.шк., 1987.
4 Ахмадеев И.А., Хайруллин А.Х., Юрасов С.Ю. Базы данных, Наб.Челны 2004 г.
5 Дейт К. Введение в системы баз данных. - К.: Диалектика, 1998.
6 Хансен Г., Хансен Д. Базы данных: разработка и уравление. - М.: БИНОМ, 1999.
7 Ладыженский Г. Системы управления базами данных - коротко о главном.// СУБД № 2. - Москва, 2005.
8 Гусева Т.И., Башин Ю.Б. Проектирование баз данных в примерах и задачах. - М.: Радио и связь, 1999. - 160 с., ил.
9 Дейт К. Введение в системы баз данных: Пер. с англ. - М.: Наука, 1980. - 464 с.
10 Ладыженский Г. Системы управления базами данных - коротко о главном.// СУБД № 2. - Москва, 1995, С.34-39.
11 Шафрин Ю.А. Информационные технологии: в 2 частях. Ч.1, 2:. - М.: Лаборатория базовых знаний, 2001 г.
12 Степанова Е.Е., Хмелевская Н.В. Информационное обеспечение управленческой деятельности. - М.: Форум-Инфра-М, 2004 г.
13 Кандзюба С.П., Громов В.Н. «Delphi 6. Базы данных и приложения. Лекции и упражнения» – К.: Издательство «ДиаСофт», 2001 г.
14 Архангельский А.Я. «Программирование в Delphi 6» – М.: ЗАО «Издательство БИНОМ», 2001 г.
15 Культин Н. «Основы программирования в Delphi 7» – СПб. «БХВ-Петербург», 2004 г.
16 Беркинбаев К.М. «Практикум по программированию» - Алматы, 2006 г.
17 Орлик С.В. «Секреты Delphi на примерах» - М.Бином, 1996 г.
18 Баженова И.Ю. «Delphi 5. Самоучитель программиста»: Москва, 2001 г.
19 Коркин И.К. «Работа в Delphi 5», Москва 2000 г.
20 Боглаев Ю.П. «Вычислительная математика и программирование» - М., 1990 г.
21 Ляхович В.Ф. Основы информатики. - Р н/Д: Изд-во «Феникс», 2000.
22 Симонович С.В., Евсеев Г.А и др. Общая информатика. - М.: АСТ-ПРЕСС, Инфорком - Прес, 2001 г.
23 Острейковский В.А. Информатика. - М.: Высш. Шк., 1999 г.
24 Бадд Т. «Объектно-ориентированное программирование в действии: Пер. с англ.» - СПб.: Питер 1997 г.
25 Специальная информатика – учебное пособие. С.В. Симонович, Г.А. Евсеев, А.Г. Алексеев. Москва 2000 г.
26 Хьюз Дж. Мичтом Дж. «Структурный подход к программированию: Пер. с англ.» - М.: Мир1980 г.
27 Епашенников А.М. Епашенников В.А. «Программирование в среде Delphi: в 4-х ч.» - М.: Диалог- МИФИ 1997-98 гг.
28 Архангельский А.Я. «Программирование в Delphi 7» – М.: ЗАО «Издательство БИНОМ», 2005 г.
29 Бобровский С. Delphi7: Учебный курс. – СПб.: Изд-во «Питер». 2000 г.
30 Иванова Г.С., Ничушкина Т.Н., Пугачев Е.К. «Объектно-ориентированное программирование: Учеб. Для ВУЗов / под ред. Г.С.Ивановой» – М.: Изд-во МГТУ им. Н.Э. Баумана, 2001 г.
31 Вирт Н. «Алгоритмы и структуры данных: Пер с англ.» – 2-е изд СПб. Невский диалект, 2001 г.
32 Ефимова О., Морозов В., Угринович Н. Курс компьютерной технологии с основами информатики. - М.: ООО «Фирма», «Издательство АСТ», 1999 г.
33 Князева М.Д. «Алгоритмика: от алгоритма к программе» - КУДИЦ –ОБРАЗ - М.: 2006 г.
34 Кормен Т., Лейзерсон Ч., Ривест Р. «Алгоритмы: построение и анализ» - М: Центр непрерывного математического образования, 2000 г.
35 Марков А.С., Лисовский К.Ю. Базы Данных. Введение в теорию и методологию. Москва, 2004 г.
36 Могилев А.В., Пак Н.И., Хеннер Е.Е. «Практикум по информатике: Учеб.пособие для студентов ВУЗа» – М.: Изд-во центр «Академия», 2002 г.
37 Нейл Рубенкинг «Программирование в Delphi 5», Киев 2000 г.
38 С.В. Глушаков, А.С. Сурядный – «Персональный компьютер»; / Харьков: Фолио, 2005 г.
39 Терехов А.Н. «Технология программирования. БИНОМ. Лаборатория знаний», Интернет-университет информационных технологий – ИНТУИТ.ру, 2006 г.
40 Фаронов В. «Delphi 7: учебный курс» – СПб.: Питер 2006 г.
41 Хомоненко А., Гофман В., Мещеряков Е., Никифоров В. – «Delphi 7»: «БХВ-Петербург» – Санкт-Петербург, 2004 г.
42 Шумаков П.В., Фаронов В.В. Delphi5 -Руководство разработки баз данных. – СПб.: Изд-во «Питер». –2000 г.
43 http://www.delphikingdom.com
44 http://www.citforum.ru/programming/delphi.shtml
45 http://www.delphi4all.narod.ru
46 http://www.delphisorces.ru
47 http://www.kladovka.net.ru/delphibase

Дисциплина: Информатика, Программирование, Базы данных
Тип работы:  Дипломная работа
Бесплатно:  Антиплагиат
Объем: 81 страниц
В избранное:   
Кафедра Информатики и математики

ДИПЛОМНАЯ РАБОТА

На тему: Использование объектно-ориентированного программирования при
создании приложений для работы с базами данных

специальность 5В060200 - Информатика

Выполнил
Научный руководитель
магистр, ст.преподаватель

Семей 2016 г.
Содержание

Введение 3

1 Основные понятия в области баз данных и систем управления базами данных

1.1 История развития баз данных 5

1.2 Основные понятия теории баз данных 13

1.3 Классификация баз данных и систем управления базами данных 23
2 Создание базы данных в среде объектно-ориентированного программирования
Delphi
2.1 Основные аспекты создания базы данных в Delphi 31
2.2 Механизмы управления данными 40
2.3 Компоненты отображения данных 46
Заключение 58
Список использованной литературы 60
Приложение 62
Введение

В последнее время значительно возрос объем и оборот информации во
всех сферах жизнедеятельности человека. Процесс накопления, обработки и
использования информации постоянно ускоряется.
Традиционно информация хранится на бумажных носителях. При этом
трудно осуществить быстрый отбор нужных данных. В связи с этим возникает
необходимость использования средств автоматизации и управления большими
объемами информации, позволяющих эффективно хранить, обрабатывать и
распределять накопленные данные. Сейчас много программ и приложений,
которые облегчают работу человеку, так как с появлением компьютеров,
человек отходит на второй план.
Проблема автоматизации производственных процессов и процессов
управления как средства повышения производительности труда всегда являлась
и остается актуальной. Необходимость автоматизации управления объясняется
задачами облегчения труда управленческого персонала, сдерживанием роста
его численности, вызываемым развитием производства; усложнением
производственных связей; увеличением объемов управленческой функции.
Важную роль играет задача соответствия технической базы управления
аналогичной базе производства, в отношении которого производится
автоматизация.
Для принятия эффективных управленческих решений в условиях
динамичного развития рыночной экономики предприятию требуется
целесообразная система информационного обеспечения, объективно отражающая
сложившуюся экономическую ситуацию.
Автоматизированные системы это залог успеха любой организации в
управленческой деятельности, огромная помощь по ведению документов,
контроль над исполнением приказов, а также организация коммуникационных
процессов как внутри офиса, так и с внешней средой.
В современном мире практически в любой сфере деятельности огромную
роль играет использование систем управления базами данных. При внедрении
данных систем наблюдается резкое повышение производительности за счет
удобства использования и автоматизации работы. Системы управления базами
данных основываются на компьютерных технологиях и программном обеспечении.
Основная задача систем управления базами данных – это перевод всех
информационных процессов производства в электронный вид с последующим его
использованием в рабочей деятельности.
Компьютеризация рабочего места позволяет отказаться от ручных форм
работы и перейти на современную форму работы с помощью ПЭВМ. Тем более, что
постоянно возрастает объем труда на любых предприятиях, внедряются системы
автоматизации в смежных областях, и в связи с этим целесообразно
использовать новые технологии для автоматизации рабочего процесса.
Таким образом, актуальность дипломной работы заключается в том, что в
последнее время тема разработки и использования возможностей баз данных и
средств автоматизации, основанных на них, становится обсуждаемой и
востребованной на государственном уровне. Современные предприятия все
активнее используют информационные технологии и компьютерные
телекоммуникации. Особенно динамично развиваются технологии, связанные с
обработкой большого количества информации.
Целью дипломной работы является разработка базы данных в среде
объектно-ориентированного программирования Delphi.
В соответствии с целью дипломной работы были поставлены следующие
задачи:
– ознакомится с теоретическими аспектами темы;
– рассмотреть основные вопросы в области средств автоматизации
рабочего места на основе использования баз данных;
– разработать программный продукт с использованием возможностей
программирования баз данных в среде Delphi.
Предметом исследования является область разработки баз данных.
Объектом исследования является разрабатываемая база данных.
Новизна дипломной работы состоит в представлении интерпретации данной
темы эффективными средствами программы Delphi.
Теоретическая значимость дипломной работы: возможность использования
материалов дипломной работы для программирования различного рода баз
данных.
Практическая значимость дипломной работы: возможность использования
материалов дипломной работы на предприятиях.
Дипломная работа состоит из введения, двух глав, заключения, списка
использованной литературы и приложения.
В первой главе дипломной работы рассматриваются основные понятия в
области баз данных и систем управления базами данных. Вторая глава освещает
практические вопросы создания базы данных в среде объектно-ориентированного
программирования Delphi.

1 Основные понятия в области баз данных и систем управления базами данных

1.1 История развития баз данных

В истории вычислительной техники можно проследить развитие двух
основных областей ее использования. Первая область – применение
вычислительной техники для выполнения численных расчетов, которые слишком
долго или вообще невозможно производить вручную. Развитие этой области
способствовало интенсификации методов численного решения сложных
математических задач, появлению языков программирования, ориентированных на
удобную запись численных алгоритмов, становлению обратной связи с
разработчиками новых архитектур ЭВМ. Характерной особенностью данной
области применения вычислительной техники является наличие сложных
алгоритмов обработки, которые применяются к простым по структуре данным,
объем которых сравнительно невелик.
Вторая область – это использование средств вычислительной техники в
автоматических или автоматизированных информационных системах.
Информационная система представляет собой программно-аппаратный комплекс,
обеспечивающий выполнение следующих функций:
1. надежное хранение информации в памяти компьютера;
2. выполнение специфических для данного приложения преобразований
информации и вычислений;
3. предоставление пользователям удобного и легко осваиваемого интерфейса
[1].
Обычно такие системы имеют дело с большими объемами информации,
имеющей достаточно сложную структуру. Классическими примерами
информационных систем являются банковские системы, автоматизированные
системы управления предприятиями, системы резервирования авиационных или
железнодорожных билетов, мест в гостиницах и другие.
Вторая область использования вычислительной техники возникла
несколько позже первой. Это связано с тем, что на заре вычислительной
техники возможности компьютеров по хранению информации были очень
ограниченными. Говорить о надежном и долговременном хранении информации
можно только при наличии запоминающих устройств, сохраняющих информацию
после выключения электрического питания. Оперативная (основная) память
компьютеров этим свойством обычно не обладает. В первых компьютерах
использовались два вида устройств внешней памяти – магнитные ленты и
барабаны. Емкость магнитных лент была достаточно велика, но по своей
физической природе они обеспечивали последовательный доступ к данным.
Магнитные же барабаны давали возможность произвольного доступа к данным, но
имели ограниченный объем хранимой информации.
Эти ограничения не являлись слишком существенными для чисто численных
расчетов. Даже если программа должна обработать (или произвести) большой
объем информации, при программировании можно продумать расположение этой
информации во внешней памяти (например, на последовательной магнитной
ленте), обеспечивающее эффективное выполнение этой программы. Однако в
информационных системах совокупность взаимосвязанных информационных
объектов фактически отражает модель объектов реального мира. А потребность
пользователей в информации, адекватно отражающей состояние реальных
объектов, требует сравнительно быстрой реакции системы на их запросы. И в
этом случае наличие сравнительно медленных устройств хранения данных, к
которым относятся магнитные ленты и барабаны, было недостаточным.
Можно предположить, что именно требования нечисловых приложений
вызвали появление съемных магнитных дисков с подвижными головками, что
явилось революцией в истории вычислительной техники. Эти устройства внешней
памяти обладали существенно большей емкостью, чем магнитные барабаны,
обеспечивали удовлетворительную скорость доступа к данным в режиме
произвольной выборки, а возможность смены дискового пакета на устройстве
позволяла иметь практически неограниченный архив данных.
С появлением магнитных дисков началась история систем управления
данными во внешней памяти. До этого каждая прикладная программа, которой
требовалось хранить данные во внешней памяти, сама определяла расположение
каждой порции данных на магнитной ленте или барабане и выполняла обмены
между оперативной памятью и устройствами внешней памяти с помощью
программно-аппаратных средств низкого уровня. Такой режим работы не
позволяет или очень затрудняет поддержание на одном внешнем носителе
нескольких архивов долговременно хранимой информации. Кроме того, каждой
прикладной программе приходилось решать проблемы именования частей данных и
структуризации данных во внешней памяти.
Важным шагом в развитии именно информационных систем явился переход к
использованию централизованных систем управления файлами. С точки зрения
прикладной программы, файл – это именованная область внешней памяти, в
которую можно записывать и из которой можно считывать данные [2]. Правила
именования файлов, способ доступа к данным, хранящимся в файле, и структура
этих данных зависят от конкретной системы управления файлами и, возможно,
от типа файла. Система управления файлами берет на себя распределение
внешней памяти, отображение имен файлов в соответствующие адреса во внешней
памяти и обеспечение доступа к данным.
Пользователи видят файл как линейную последовательность записей и
могут выполнить над ним ряд стандартных операций:
– создать файл (требуемого типа и размера);
– открыть ранее созданный файл;
– прочитать из файла некоторую запись (текущую, следующую, предыдущую,
первую, последнюю);
– записать в файл на место текущей записи новую, добавить новую запись
в конец файла.
В разных файловых системах эти операции могли несколько отличаться,
но общий смысл их был именно таким. Структура записи файла была известна
только программе, которая с ним работала, система управления файлами не
знала ее. И поэтому для того, чтобы извлечь некоторую информацию из файла,
необходимо было точно знать структуру записи файла с точностью до бита.
Каждая программа, работающая с файлом, должна была иметь у себя внутри
структуру данных, соответствующую структуре этого файла. Поэтому при
изменении структуры файла требовалось изменять структуру программы, а это
требовало новой компиляции, то есть процесса перевода программы в
исполняемые машинные коды. Такая ситуация характеризовалась как зависимость
программ от данных. Для информационных систем характерным является наличие
большого числа различных пользователей (программ), каждый из которых имеет
свои специфические алгоритмы обработки информации, хранящейся в одних и тех
же файлах. Изменение структуры файла, которое было необходимо для одной
программы, требовало исправления и перекомпиляции и дополнительной отладки
всех остальных программ, работающих с этим же файлом. Это было первым
существенным недостатком файловых систем, который явился толчком к созданию
новых систем хранения и управления информацией.
Далее, поскольку файловые системы являются общим хранилищем файлов,
принадлежащих, вообще говоря, разным пользователям, системы управления
файлами должны обеспечивать авторизацию доступа к файлам. В общем виде
подход состоит в том, что по отношению к каждому зарегистрированному
пользователю данной вычислительной системы для каждого существующего файла
указываются действия, которые разрешены или запрещены данному пользователю.
В большинстве современных систем управления файлами применяется подход к
защите файлов, впервые реализованный в ОС UNIX. В этой ОС каждому
зарегистрированному пользователю соответствует пара целочисленных
идентификаторов: идентификатор группы, к которой относится этот
пользователь, и его собственный идентификатор в группе. При каждом файле
хранится полный идентификатор пользователя, который создал этот файл, и
фиксируется, какие действия с файлом может производить его создатель, какие
действия с файлом доступны для других пользователей той же группы и что
могут делать с файлом пользователи других групп. Администрирование режимом
доступа к файлу в основном выполняется его создателем-владельцем. Для
множества файлов, отражающих информационную модель одной предметной
области, такой децентрализованный принцип управления доступом вызывал
дополнительные трудности. И отсутствие централизованных методов управления
доступом к информации послужило еще одной причиной разработки СУБД.
Следующей причиной стала необходимость обеспечения эффективной
параллельной работы многих пользователей с одними и теми же файлами. В
общем случае системы управления файлами обеспечивали режим
многопользовательского доступа. Если операционная система поддерживает
многопользовательский режим, вполне реальна ситуация, когда два или более
пользователя одновременно пытаются работать с одним и тем же файлом. Если
все пользователи собираются только читать файл, ничего страшного не
произойдет. Но если хотя бы один из них будет изменять файл, для корректной
работы этих пользователей требуется взаимная синхронизация их действий по
отношению к файлу.
В системах управления файлами обычно применялся следующий подход. В
операции открытия файла (первой и обязательной операции, с которой должен
начинаться сеанс работы с файлом) среди прочих параметров указывался режим
работы (чтение или изменение). Если к моменту выполнения этой операции
некоторым пользовательским процессом PR1 файл был уже открыт другим
процессом PR2 в режиме изменения, то в зависимости от особенностей системы
процессу PR1 либо сообщалось о невозможности открытия файла, либо он
блокировался до тех пор, пока в процессе PR2 не выполнялась операция
закрытия файла.
При подобном способе организации одновременная работа нескольких
пользователей, связанная с модификацией данных в файле, либо вообще не
реализовывалась, либо была очень замедлена. Эти недостатки послужили тем
толчком, который заставил разработчиков информационных систем предложить
новый подход к управлению информацией. Этот подход был реализован в рамках
новых программных систем, названных впоследствии системами управления
базами данных (СУБД), а сами хранилища информации, которые работали под
управлением данных систем, назывались базами или банками данных (БД и БнД).

История развития СУБД насчитывает более 30 лет. В 1968 году была
введена в эксплуатацию первая промышленная СУБД система IMS фирмы IBM. В
1975 году появился первый стандарт ассоциации по языкам систем обработки
данных – Conference of Data System Languages (CODASYL), который определил
ряд фундаментальных понятий в теории систем баз данных, которые и до сих
пор являются основополагающими для сетевой модели данных.

В дальнейшее развитие теории баз данных большой вклад был сделан
американским математиком Э. Ф. Коддом, который является создателем
реляционной модели данных. В 1981 году Э. Ф. Кодд получил за создание
реляционной модели и реляционной алгебры престижную премию Тьюринга
Американской ассоциации по вычислительной технике.
Менее двух десятков лет прошло с этого момента, но стремительное
развитие вычислительной техники, изменение ее принципиальной роли в жизни
общества, обрушившийся бум персональных ЭВМ и, наконец, появление мощных
рабочих станций и сетей ЭВМ повлияло также и на развитие технологии баз
данных. Можно выделить четыре этапа в развитии данного направления в
обработке данных, хотя жестких временных ограничений нет [3].
Первый этап развития СУБД связан с организацией БД на больших машинах
типа IBM 360370, ЕС-ЭВМ и мини-ЭВМ типа PDP11 (фирмы Digital Equipment
Corporation – DEC), разных моделях HP (фирмы Hewlett Packard). БД хранились
во внешней памяти центральной ЭВМ, пользователями этих БД были задачи,
запускаемые в основном в пакетном режиме. Интерактивный режим доступа
обеспечивался с помощью консольных терминалов, которые не обладали
собственными вычислительными ресурсами (процессором, внешней памятью) и
служили только устройствами ввода-вывода для центральной ЭВМ. Программы
доступа к БД писались на различных языках и запускались как числовые
программы. Мощные операционные системы обеспечивали возможность условно
параллельного выполнения всего множества задач. Эти системы можно было
отнести к системам распределенного доступа, потому что БД была
централизованной, хранилась на устройствах внешней памяти одной центральной
ЭВМ, а доступ к ней поддерживался от многих пользователей-задач.
Особенности этого этапа развития выражаются в следующем [4]:
– все СУБД базируются на мощных мультипрограммных операционных системах
(MVS, SVM, RTE, OSRV, RSX, UNIX), поэтому в основном поддерживается
работа с централизованной базой данных в режиме распределенного
доступа;
– функции управления распределением ресурсов в основном осуществляются
операционной системой (ОС);
– поддерживаются языки низкого уровня манипулирования данными,
ориентированные на навигационные методы доступа к данным;
– значительная роль отводится администрированию данных;
– проводятся серьезные работы по обоснованию и формализации реляционной
модели данных, и была создана первая система (System R), реализующая
идеологию реляционной модели данных;
– проводятся теоретические работы по оптимизации запросов и управлению
распределенным доступом к централизованной БД, было введено понятие
транзакции;
– результаты научных исследований открыто обсуждаются в печати, идет
мощный поток общедоступных публикаций, касающихся всех аспектов теории
и практики баз данных, и результаты теоретических исследований активно
внедряются в коммерческие СУБД;
– появляются языки высокого уровня для работы с реляционной моделью
данных, однако отсутствуют стандарты для этих первых языков.

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

– все СУБД были рассчитаны на создание БД в основном с монопольным
доступом ввиду того, что компьютеры не были подсоединены к сети, и
база данных создавалась для работы одного пользователя; в редких
случаях предполагалась последовательная работа нескольких
пользователей;
– большинство СУБД имели развитый и удобный пользовательский интерфейс
с интерактивным режимом работы, а также развитый и удобный
инструментарий для разработки готовых приложений без программирования,
причем инструментальная среда состояла из готовых элементов приложения
в виде шаблонов экранных форм, отчетов, графических конструкторов
запросов, которые достаточно просто могли быть собраны в единый
комплекс;
– во всех настольных СУБД поддерживался только внешний уровень
представления реляционной модели, то есть только внешний табличный вид
структур данных;
– при наличии высокоуровневых языков манипулирования данными типа
реляционной алгебры и SQL в настольных СУБД поддерживались
низкоуровневые языки манипулирования данными на уровне отдельных строк
таблиц;
– в настольных СУБД отсутствовали средства поддержки ссылочной и
структурной целостности базы данных (эти функции должны были выполнять
приложения, однако средства разработки приложений иногда не позволяли
это сделать, и тогда эти функции должны были выполняться
пользователем, требуя от него дополнительного контроля при вводе и
изменении информации, хранящейся в БД);
– наличие монопольного режима работы фактически привело к вырождению
функций администрирования БД и в связи с этим – к отсутствию
инструментальных средств администрирования БД;
– сравнительно скромные требования к аппаратному обеспечению со стороны
настольных СУБД.
Яркие представители этого семейства – очень широко использовавшиеся
до недавнего времени СУБД Dbase III+, DbaseIV, FoxPro, Clipper, Paradox.
Хорошо известно, что история развивается по спирали, поэтому после
процесса персонализации начался обратный процесс – интеграция. Множится
количество локальных сетей, все больше информации передается между
компьютерами, остро встает задача согласованности данных, хранящихся и
обрабатывающихся в разных местах, но логически друг с другом связанных,
возникают задачи, связанные с параллельной обработкой транзакций –
последовательностей операций над БД, переводящих ее из одного
непротиворечивого состояния в другое непротиворечивое состояние. Успешное
решение этих задач приводит к появлению распределенных баз данных,
сохраняющих все преимущества настольных СУБД и в то же время позволяющих
организовать параллельную обработку информации и поддержку целостности БД.
Особенности данного этапа:
– практически все СУБД обеспечивают поддержку полной реляционной
модели: структурной целостности, ссылочной целостности, контроля
соблюдения ссылочной целостности в течение всего времени
функционирования системы и гарантий невозможности со стороны
СУБД нарушить эти ограничения;
– большинство СУБД могут работать на компьютерах с разной
архитектурой и под разными ОС, при этом для пользователей доступ
к данным, управляемым СУБД на разных платформах, практически
неразличим;
– необходимость поддержки многопользовательской работы с БД и
возможность децентрализованного хранения данных потребовали
развития средств администрирования БД с реализацией общей
концепции средств защиты данных;
– потребность в новых реализациях вызвала создание серьезных
теоретических трудов по оптимизации реализаций распределенных БД
и работе с распределенными транзакциями и запросами с внедрением
полученных результатов в коммерческие СУБД.
– чтобы не потерять клиентов, которые ранее работали на
настольных СУБД, практически все современные СУБД имеют средства
подключения клиентских приложений, разработанных с
использованием настольных СУБД, и средства экспорта данных из
форматов настольных СУБД второго этапа развития.
– разработан ряд стандартов в рамках языков описания и
манипулирования данными, начиная с SQL89, SQL92, SQL99 и
технологий по обмену данными между различными СУБД, к которым
можно отнести и протокол ODBC (Open DataBase Connectivity) фирмы
Microsoft;
– появляются работы, связанные с концепцией объектно-
ориентированных БД – ООБД.
Представителями СУБД, относящимся к этому этапу, можно считать MS
Access 97 и все современные серверы БД Oracle7.3,Oracle 8.4 MS SQL6.5, MS
SQL7.0, System 10, System 11, Informix, DB2, SQL Base и другие серверы БД.
Четвертый этап характеризуется появлением новой технологии доступа к
данным – интранет. Основное отличие этого подхода от технологии клиент-
сервер состоит в том, что отпадает необходимость использования
специализированного клиентского программного обеспечения. Для работы с
удаленной БД используется стандартный браузер Интернета, и для конечного
пользователя процесс обращения к данным происходит аналогично скольжению по
Всемирной Паутине (Рисунок 1). При этом встроенный в загружаемые
пользователем HTML-страницы код отслеживает все действия пользователя и
транслирует их в низкоуровневые SQL-запросы к БД, выполняя, таким образом,
ту работу, которой в технологии клиент-сервер занимается клиентская
программа. Удобство данного подхода привело к тому, что он стал
использоваться не только для удаленного доступа к БД, но и для
пользователей локальной сети предприятия. Простые задачи обработки данных,
не связанные со сложными алгоритмами, требующими согласованного изменения
данных во многих взаимосвязанных объектах, достаточно просто и эффективно
могут быть построены по данной архитектуре. В этом случае для подключения
нового пользователя к возможности использовать данную задачу не требуется
установка дополнительного клиентского программного обеспечения. Однако
алгоритмически сложные задачи рекомендуется реализовывать в архитектуре
клиент-сервер с разработкой специального клиентского программного
обеспечения.
У каждого из вышеперечисленных подходов к работе с данными есть свои
достоинства и свои недостатки, которые и определяют область применения того
или иного метода, и в настоящее время все подходы широко используются.

Рисунок 1 Взаимодействие с базой данных в технологии интранет
1.2 Основные понятия теории баз данных

Современные авторы часто употребляют термины банк данных и база
данных как синонимы, однако в общеотраслевых руководящих материалах по
созданию банков данных эти понятия различаются. Приведем следующие
определения банка данных, базы данных и СУБД:
Банк данных (БнД) – это система специальным образом организованных
данных – баз данных, программных, технических, языковых, организационно-
методических средств, предназначенных для обеспечения централизованного
накопления и коллективного многоцелевого использования данных [6].
База данных (БД) – именованная совокупность данных, отражающая
состояние объектов и их отношений в рассматриваемой предметной области [7].
Система управления базами данных (СУБД) – совокупность языковых и
программных средств, предназначенных для создания, ведения и совместного
использования БД многими пользователями [8].
Сухой канцелярский язык труден для восприятия, но эти определения
четко разграничивают назначение всех трех базовых понятий, и мы можем
принять их за основу.
Программы, с помощью которых пользователи работают с БД, называются
приложениями. В общем случае с одной БД могут работать множество различных
приложений. Например, если БД моделирует некоторое предприятие, то для
работы с ней может быть создано приложение, которое обслуживает подсистему
учета кадров, другое приложение может быть посвящено работе подсистемы
расчета заработной платы сотрудников, третье приложение работает как
подсистемы складского учета, четвертое приложение посвящено планированию
производственного процесса. При рассмотрении приложений, работающих с одной
БД, предполагается, что они могут работать параллельно и независимо друг от
друга, и именно СУБД призвана обеспечить работу множества приложений с
единой БД таким образом, чтобы каждое из них выполнялось корректно, но
учитывало все изменения в БД, вносимые другими приложениями.
Терминология в СУБД, да и сами термины база данных и банк данных
частично заимствованы из финансовой деятельности. Это заимствование не
случайно и объясняется тем, что работа с информацией и работа с денежными
массами во многом схожи, поскольку и там, и там отсутствует персонификация
объекта обработки: две банкноты достоинством в сто рублей столь же
неотличимы и взаимозаменяемы, как два одинаковых байта (естественно, за
исключением серийных номеров). Вы можете положить деньги на некоторый счет
и предоставить возможность вашим родственникам или коллегам использовать их
для иных целей. Вы можете поручить банку оплачивать ваши расходы с вашего
счета или получить их наличными в другом банке, и это будут уже другие
денежные купюры, но их ценность будет эквивалентна той, которую вы имели,
когда клали их на ваш счет.
В процессе научных исследований, посвященных тому, как именно должна
быть устроена СУБД, предлагались различные способы реализации. Самым
жизнеспособным из них оказалась предложенная американским комитетом по
стандартизации ANSI (American National Standards Institute) трехуровневая
система организации БД (Рисунок 2).

Рисунок 2 Трехуровневая модель системы управления базой данных,
предложенная ANSI

1. Уровень внешних моделей – самый верхний уровень, где каждая модель
имеет свое видение данных. Этот уровень определяет точку зрения на
БД отдельных приложений. Каждое приложение видит и обрабатывает только
те данные, которые необходимы именно этому приложению. Например,
система распределения работ использует сведения о квалификации
сотрудника, но ее не интересуют сведения об окладе, домашнем адресе и
телефоне сотрудника, и наоборот, именно эти сведения используются в
подсистеме отдела кадров.
2. Концептуальный уровень – центральное управляющее звено, здесь база
данных представлена в наиболее общем виде, который объединяет данные,
используемые всеми приложениями, работающими с данной базой данных.
Фактически концептуальный уровень отражает обобщенную модель
предметной области (объектов реального мира), для которой создавалась
база данных. Как любая модель, концептуальная модель отражает только
существенные, с точки зрения обработки, особенности объектов реального
мира.
3. Физический уровень — собственно данные, расположенные в файлах или в
страничных структурах, расположенных на внешних носителях информации
[9].
Эта архитектура позволяет обеспечить логическую (между уровнями 1 и
2) и физическую (между уровнями 2 и 3) независимость при работе с данными.
Логическая независимость предполагает возможность изменения одного
приложения без корректировки других приложений, работающих с этой же базой
данных. Физическая независимость предполагает возможность переноса хранимой
информации с одних носителей на другие при сохранении работоспособности
всех приложений, работающих с данной базой данных. Это именно то, чего не
хватало при использовании файловых систем.
Выделение концептуального уровня позволило разработать аппарат
централизованного управления базой данных.
Рисунок 3 иллюстрирует взаимодействие пользователя, СУБД и ОС при
обработке запроса на получение данных. Цифрами помечена последовательность
взаимодействий.

Рисунок 3 Схема прохождения запроса к БД

1. Пользователь посылает СУБД запрос на получение данных из БД.
2. Анализ прав пользователя и внешней модели данных, соответствующей
данному пользователю, подтверждает или запрещает доступ данного
пользователя к запрошенным данным.
3. В случае запрета на доступ к данным СУБД сообщает пользователю об этом
(стрелка 12) и прекращает дальнейший процесс обработки данных, в
противном случае СУБД определяет часть концептуальной модели, которая
затрагивается запросом пользователя.
4. СУБД запрашивают информацию о части концептуальной модели.
5. СУБД получает информацию о запрошенной части концептуальной модели.
6. СУБД запрашивает информацию о местоположении данных на физическом
уровне (файлы или физические адреса).
7. В СУБД возвращается информация о местоположении данных в терминах
операционной системы.
8. СУБД вежливо просит операционную систему предоставить необходимые
данные, используя средства операционной системы.
9. Операционная система осуществляет перекачку информации из устройств
хранения и пересылает ее в системный буфер.
10. Операционная система оповещает СУБД об окончании пересылки.
11. СУБД выбирает из доставленной информации, находящейся в системном
буфере, только то, что нужно пользователю, и пересылает эти данные в
рабочую область пользователя.
БМД – это база метаданных,именно здесь и хранится вся информация об
используемых структурах данных, логической организации данных, правах
доступа пользователей и, наконец, физическом расположении данных [10]. Для
управления БМД существует специальное программное обеспечение
администрирования баз данных, которое предназначено для корректного
использования единого информационного пространства многими пользователями.
Запрос не всегда проходит полный цикл. СУБД обладает достаточно
развитым интеллектом, который позволяет ей не повторять бессмысленных
действий. И поэтому, например, если этот же пользователь повторно обратится
к СУБД с новым запросом, то для него уже не будут проверяться внешняя
модель и права доступа, а если дальнейший анализ запроса покажет, что
данные могут находиться в системном буфере, то СУБДосуществит только 11 и
12 шаги в обработке запроса.
Механизм прохождения запроса в реальных СУБД гораздо сложнее, но и
эта упрощенная схема показывает, насколько серьезными и сложными должны
быть механизмы обработки запросов, поддерживаемые реальными СУБД.
Как любой программно-организационно-техничеcк ий комплекс, банк данных
существует во времени и в пространстве. Он имеет определенные стадии своего
развития:
1. Проектирование.
2. Реализация.
3. Эксплуатация.
4. Модернизация и развитие.
5. Полная реорганизация.
На каждом этапе своего существования с банком данных связаны разные
категории пользователей.
Определим основные категории пользователей и их роль в
функционировании банка данных:
– Конечные пользователи. Это основная категория пользователей, в
интересах которых и создается банк данных. В зависимости от
особенностей создаваемого банка данных круг его конечных пользователей
может существенно различаться.
Это могут быть случайные пользователи, обращающиеся к БД время от
времени за получением некоторой информации, а могут быть регулярные
пользователи. В качестве случайных пользователей могут рассматриваться,
например, возможные клиенты вашей фирмы, просматривающие каталог вашей
продукции или услуг с обобщенным или подробным описанием того и другого.
Регулярными пользователями могут быть ваши сотрудники, работающие со
специально разработанными для них программами, которые обеспечивают
автоматизацию их деятельности при выполнении своих должностных
обязанностей.
Например, менеджер, планирующий работу сервисного отдела компьютерной
фирмы, имеет в своем распоряжении программу, которая помогает ему
планировать и распределять текущие заказы, контролировать ход их
выполнения, заказывать на складе необходимые комплектующие для новых
заказов.
Главный принцип состоит в том, что от конечных пользователей не
должно требоваться каких-либо специальных знаний в области вычислительной
техники и языковых средств.
– Администраторы банка данных. Это группа пользователей, которая на
начальной стадии разработки банка данных отвечает за его оптимальную
организацию с точки зрения одновременной работы множества конечных
пользователей, на стадии эксплуатации отвечает за корректность работы
данного банка информации в многопользовательском режиме. На стадии
развития и реорганизации эта группа пользователей отвечает за
возможность корректной реорганизации банка без изменения или
прекращения его текущей эксплуатации.
– Разработчики и администраторы приложений. Это группа пользователей,
которая функционирует во время проектирования, создания и
реорганизации банка данных. Администраторы приложений координируют
работу разработчиков при разработке конкретного приложения или группы
приложений, объединенных в функциональную подсистему. Разработчики
конкретных приложений работают с той частью информации из базы данных,
которая требуется для конкретного приложения.
Не в каждом банке данных могут быть выделены все типы пользователей.
При разработке информационных систем с использованием настольных СУБД
администратор банка данных, администратор приложений и разработчик часто
существовали в одном лице. Однако при построении современных сложных
корпоративных баз данных, которые используются для автоматизации всех или
большей части бизнес-процессов в крупной фирме или корпорации, могут
существовать и группы администраторов приложений, и отделы разработчиков.
Наиболее сложные обязанности возложены на группу администратора БД.
В составе группы администратора БД должны быть:
– системные аналитики;
– проектировщики структур данных и внешнего по отношению к банку данных
информационного обеспечения;
– проектировщики технологических процессов обработки данных;
– системные и прикладные программисты;
– операторы и специалисты по техническому обслуживанию.
Если речь идет о коммерческом банке данных, то важную роль здесь
играют специалисты по маркетингу.

Перечислим основные функции группы администратора БД:

1. Анализ предметной области: описание предметной области, выявление
ограничений целостности, определение статуса (доступности,
секретности) информации, определение потребностей пользователей,
определение соответствия данные-пользователь, определение объемно-
временных характеристик обработки данных.
2. Проектирование структуры БД: определение состава и структуры файлов БД
и связей между ними, выбор методов упорядочения данных и методов
доступа к информации, описание БД на языке описания данных (ЯОД).
3. Задание ограничений целостности при описании структуры БД и процедур
обработки БД:
– задание декларативных ограничений целостности, присущих
предметной области;
– определение динамических ограничений целостности, присущих
предметной области в процессе изменения информации, хранящейся в
БД;
– определение ограничений целостности, вызванных структурой БД;
– разработка процедур обеспечения целостности БД при вводе и
корректировке данных;
– определение ограничений целостности при параллельной работе
пользователей в многопользовательском режиме.
4. Первоначальная загрузка и ведение БД:
– разработка технологии первоначальной загрузки БД, которая будет
отличаться от процедуры модификации и дополнения данными при
штатном использовании базы данных;
– разработка технологии проверки соответствия введенных данных
реальному состоянию предметной области. База данных моделирует
реальные объекты некоторой предметной области и взаимосвязи
между ними, и на момент начала штатной эксплуатации эта модель
должна полностью соответствовать состоянию объектов предметной
области на данный момент времени;
– в соответствии с разработанной технологией первоначальной
загрузки может понадобиться проектирование системы
первоначального ввода данных.
5. Защита данных:
– определение системы паролей, принципов регистрации
пользователей, создание групп пользователей, обладающих
одинаковыми правами доступа к данным;
– разработка принципов защиты конкретных данных и объектов
проектирования; разработка специализированных методов
кодирования информации при ее циркуляции в локальной и
глобальной информационных сетях;
– разработка средств фиксации доступа к данным и попыток
нарушения системы защиты;
– тестирование системы защиты;
– исследование случаев нарушения системы защиты и развитие
динамических методов защиты информации в БД.
6. Обеспечение восстановления БД:
– разработка организационных средств архивирования и принципов
восстановления БД;
– разработка дополнительных программных средств и технологических
процессов восстановления БД после сбоев.
7. Анализ обращений пользователей БД: сбор статистики по характеру
запросов, по времени их выполнения, по требуемым выходным документам
8. Анализ эффективности функционирования БД:
– анализ показателей функционирования БД;
– планирование реструктуризации (изменение структуры) БД и
реорганизации БнД.
9. Работа с конечными пользователями:
– сбор информации об изменении предметной области;
– сбор информации об оценке работы БД;
– обучение пользователей, консультирование пользователей;
– разработка необходимой методической и учебной документации по
работе конечных пользователей.
10. Подготовка и поддержание системных средств:
– анализ существующих на рынке программных средств и анализ
возможности и необходимости их использования в рамках БД;
– разработка требуемых организационных и программно-технических
мероприятий по развитию БД;
– проверка работоспособности закупаемых программных средств перед
подключением их к БД;
– курирование подключения новых программных средств к БД.
11. Организационно-методическая работа по проектированию БД:
– выбор или создание методики проектирования БД;
– определение целей и направления развития системы в целом;
– планирование этапов развития БД;
– разработка общих словарей-справочников проекта БД и
концептуальной модели;
– стыковка внешних моделей разрабатываемых приложений;
– курирование подключения нового приложения к действующей БД;
– обеспечение возможности комплексной отладки множества
приложений, взаимодействующих с одной БД.
Одними из основополагающих в концепции баз данных являются обобщенные
категории данные и модель данных.
Понятие данные в концепции баз данных – это набор конкретных
значений, параметров, характеризующих объект, условие, ситуацию или любые
другие факторы. Примеры данных: Петров Николай Степанович, $30 и т. д.
Данные не обладают определенной структурой, данные становятся информацией
тогда, когда пользователь задает им определенную структуру, то есть
осознает их смысловое содержание. Поэтому центральным понятием в области
баз данных является понятие модели.
Не существует однозначного определения этого термина, у разных
авторов эта абстракция определяется с некоторыми различиями, но тем не
менее можно выделить нечто общее в этих определениях.
Модель данных – это некоторая абстракция, которая, будучи приложенной
к конкретным данным, позволяет пользователям и разработчикам трактовать их
уже как информацию, то есть сведения, содержащие не только данные, но и
взаимосвязь между ними.
На Рисунке 4 представлена классификация моделей данных.

Рисунок 4 Классификация моделей данных

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

Вы можете абсолютно на бесплатной основе полностью просмотреть эту работу через наше приложение.
Похожие работы
Объектно-ориентированное программирование в Borland Delphi: создание проекта электронной карты расположения участков микрорайона
Мощная Среда Разработки Приложений: Delphi - Эффективный Инструмент для Обработки и Хранения Данных
Методика обучения основам создания приложений графического редактора на языке программирования Borland C++ Builder: разработка электронного пособия для общеобразовательных школ
Компоненты Delphi: свойства и события
Основы программирования в Delphi: компоненты, свойства и методы
Разработка графических возможностей в среде Delphi: Теоретическое проектирование и практическая реализация
Компоненты Delphi: Описание и Свойства
Программирование в Visual Basic: события, проекты и программные модули
Разработка баз данных и приложений с помощью Delphi 7
Архитектура базы данных Delphi: компоненты, механизмы и принципы работы с данными
Дисциплины