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



Введение 1
1. Понятие информационной системы. 3
2. Понятие базы данных. 4
3. Эволюция концепций баз данных 7
4. Требования, которым должна удовлетворять организация базы данных. 10
4.1. Установление многосторонних связей 11
4.2. Производительность 11
4.3. Минимальные затраты 11
4.4. Минимальная избыточность 11
4.5. Возможности поиска 12
4.6. Целостность 12
4.7. Безопасность и секретность 12
4.8. Связь с прошлым 13
4.9. Связь с будущим 13
4.10. Простота использования 13
5. Модели представления данных 14
5.1. Иерархическая модель данных 14
5.2. Сетевая модель данных 16
5.3. Реляционная модель данных 18
5.3.1. Таблицы 19
5.3.2. Ключевые поля 21
5.3.3. Индексы 23
5.3.4. Отношения предок/потомок 24
5.3.5. Внешние ключи 25
5.3.6. Реляционная алгебра 26
5.3.7. Нормализация базы данных 27
5.3.7.1. Первая нормальная форма 28
5.3.7.2. Вторая нормальная форма 28
5.3.7.3. Третья нормальная форма 28
5.3.7.4. Четвертая нормальная форма 28
5.3.7.5. Пятая нормальная форма 29
6. Язык SQL как стандартный язык баз данных. 29
6.1. Язык SQL 29
6.2. Достоинства SQL 31
6.2.1. Независимость от конкретных СУБД 32
6.2.2. Переносимость с одной вычислительной системы на другие 32
6.2.3. Стандарты языка SQL 32
6.2.4. Одобрение SQL компанией IBM (СУБД DB2) 33
6.2.5. Протокол ODBC и компания Microsoft 33
6.2.6. Реляционная основа 33
6.2.7. Высокоуровневая структура, напоминающая английский язык 34
6.2.8. Интерактивные запросы 34
6.2.9. Программный доступ к базе данных 34
6.2.10. Различные представления данных 34
6.2.11. Полноценный язык для работы с базами данных 35
6.2.12. Динамическое определение данных 35
6.2.13. Архитектура клиент/сервер 35
7. Архитектуры баз данных 35
7.1. Локальные базы данных и архитектура "файл.сервер" 37
7.2. Удаленные базы данных и архитектура "клиент.сервер" 38
8. Среда Delphi как средство для разработки СУБД 41
8.1. Высокопроизводительный компилятор в машинный код 43
8.2. Мощный объектно.ориентированный язык 44
8.3. Объектно.ориентированная модель программных компонент 45
8.4. Библиотека визуальных компонент 46
8.5. Формы, модули и метод разработки “Two.Way Tools” 50
8.6. Масштабируемые средства для построения баз данных 50
8.7. Настраиваемая среда разработчика 53
8.8. Незначительные требования к аппаратным средствам 55
9. Проектирование базы данных 56
Инфологическая модель данных 57
9.2. Инфологическая модель данных "сущность.связь" 59
9.3. Даталогическая модель данных 63
9.4. Переход от ER . модели к реляционной. 64
9.5. Физическая модель данных 65
9.6. Этапы проектирования базы данных 66
10. Практическая часть 67
10.1. Предметная область и задачи, возложенные на базу данных 67
10.2. Определение объектов базы данных 69
10.3. ER.диаграмма базы данных 71
10.4. Даталогическая модель базы данных 73
10.5. Физическое описание модели 75
10.6. Програмная реализация 80
Заключение 81
Список литературы 82
Потоки информации, циркулирующие в мире, который нас окружает, огромны. Во времени они имеют тенденцию к увеличению. Поэтому в любой организации, как большой, так и маленькой, возникает проблема такой организации управления данными, которая обеспечила бы наиболее эффек¬тивную работу. Некоторые организации используют для этого шкафы с папками, но большинство предпочитают компьютеризированные способы – базы данных, позволяющие эф¬фективно хранить, структурировать и систематизировать большие объемы дан¬ных. И уже сегодня без баз данных невозможно представить работу большинства финансовых, промышленных, торговых и прочих организаций. Не будь баз данных, они бы просто захлебнулись в информационной лавине.
Существует много веских причин перевода существующей информации на компьютерную основу. Сейчас стоимость хранения информации в файлах ЭВМ дешевле, чем на бумаге. Базы данных позволяют хранить, структурировать информацию и извлекать оптимальным для пользователя образом. Использование клиент/серверных технологий позволяют сберечь значительные средства, а главное и время для получения необходимой информации, а также упрощают доступ и ведение, поскольку они основываются на комплексной обработке данных и централизации их хранения. Кроме того ЭВМ позволяет хранить любые форматы данных текст, чертежи, данные в рукописной форме, фотографии, записи голоса и т.д.
Для использования столь огромных объемов хранимой информации, помимо развития системных устройств, средств передачи данных, памяти необходимы средства обеспечения диалога человек-ЭВМ, которые позволяют пользователю вводить запросы, читать файлы, модифицировать хранимые данные, добавлять новые данные или принимать решения на основании хранимых данных. Для обеспечения этих функций созданы специализированные средства – системы управления базами данных (СУБД). Современные СУБД - многопользовательские системы управления базой данных, которые специализируется на управлении массивом ин¬формации одним или множеством одновременно работающих пользователей.

Целью данной дипломной работы являлось создание базы данных по делам студентов для деканата физического факультета. Задание также подразумевало создание необходимой системы управления этой базой данных СУБД. Имеющаяся совокупность информации должна просматриваться и изменяться без привлечения таких мощных средств по созданию и ведению баз данных как СУДБ Acsses, Oracle, FoxPro или Paradox for Windows.
1. Дж. Тельман, "Основы систем баз данных", Москва, Финансы и статистика', 1983г.
2. Дейт К., "Введение в системы баз данных", Москва, 'Hаука', 1980 г.
3. Когловский М.Р., "Технология баз данных на персональных ЭВМ", Москва, 'Финансы и статистика', 1992 г.
4. Шумаков П. В. “Delphi 3.0 и создание баз данных”. Москва 1997г.
5. Джон Матчо, Дэвид Р.Фолкнер. «Delphi» — пер. с англ. — М.:Бином, 1995г.
6. A.M.Епанешников., "Программирование в среде Delphi 2.0"
7. Дж. Мартин., "Организация баз данных в вычислительных системах" М: Мир 1978г.
8. С.М.Диго "Проектирование и использования баз данных". Москва: Финансы и статистика 1995.
9. Горев А., Ахаян Р., Макашарипов С. «Эффективная работа с СУБД».СПб.:Питер, 1997.— 704 с.,ил.
10. Атре Ш. Структурный подход к организации баз данных. – М.: Финансы и статистика, 1983. – 320 с.
11. Бойко В.В., Савинков В.М. Проектирование баз данных информационных систем. – М.: Финансы и статистика, 1989. – 351 с.
12. Джексон Г. Проектирование реляционных баз данных для использования с микроЭВМ. -М.: Мир, 1991. – 252 с.
13. Кириллов В.В. Структуризованный язык запросов (SQL). – СПб.: ИТМО, 1994. – 80 с.
14. Мейер М. Теория реляционных баз данных. – М.: Мир, 1987. – 608 с.
15. Тиори Т., Фрай Дж. Проектирование структур баз данных. В 2 кн., – М.: Мир, 1985. Кн. 1. – 287 с.: Кн. 2. – 320 с.
16. Цикритизис Д., Лоховски Ф. Модели данных. – М.: Финансы и статистика, 1985. – 344 с.
17. Paradox for Windows: Практическое руководство. Под редакцией Оспищева Д. А. Издательство АОЗ’ "Алевар", 1993.
18. Брябрин В.М., "Программное обеспечение персональных ЭВМ", Москва, 'Hаука', 1989 г.
19. Шафрин Ю.А. «Основы компьютерной технологии». М., 1998
20. «Кибернетические диалоговые системы», И.П.Кузнецов.
21. «Рекоммендации по общепользовательскому интерфейсу», Microsoft, редакция 1995г.
22. Подборка рефератов из сети Internet. Московская коллекция рефератов. (Адреса хранителей коллекции 2:5020/240@fidonet.org, 2:5020/630@fidonet.org).

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

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

Целью данной дипломной работы являлось создание базы данных по делам
студентов для деканата физического факультета. Задание также подразумевало
создание необходимой системы управления этой базой данных СУБД. Имеющаяся
совокупность информации должна просматриваться и изменяться без привлечения
таких мощных средств по созданию и ведению баз данных как СУДБ Acsses,
Oracle, FoxPro или Paradox for Windows.
Это продиктовано сложностью использования и громоздкостью любой из
перечисленных СУДБ. Хотя в составе каждой СУБД
имеются достаточно универсальные способы и инструменты по созданию баз
данных и управления информацией, однако их реализация в любой из
перечисленных СУДБ требует углубленного знания теории баз данных (в
частности реляционных баз данных), реляционного языка запросов SQL, умением
пользоваться генератором отчетов и т.д. Другими словами богатые возможности
этих СУБД носят общий характер, рассчитанный на любые базы данных и не
всегда удобный для неспециалистов.
Целью данной работы удовлетворяло создание специализированной СУБД,
рассчитанной на управление заранее определенной структурой информации и
решения вполне определенного и ограниченного круга задач для деканата,
которая одновременно позволяла не отвлекаться будущим пользователям на
изучение вопросов связанных с базами данных и средствами управления ими.
Для реализации этих требований было удобнее всего не прибегать к
средствам какой-либо универсальной СУБД, а создать независимую программу в
виде исполняемого файла, работающего из-под Windows, с интерфейсом
максимально приспособленного для удобной работы, не требующего никаких
дополнительных знаний.
Реализация данной задачи проводится в системе программирования Delphi
3.0, располагающей широкими возможностями по созданию приложений баз
данных, необходимым набором драйверов для доступа к самым известным
форматам баз данных, удобными и развитыми средствами для доступа к
информации, расположенной как на локальном диске, так и на удаленном
сервере, а также большим коллекцией визуальных компонент для построения
отображаемых на экране окон, что необходимо для создания удобного
интерфейса между пользователем и исполняемым кодом.

Понятие информационной системы.

Веками человечество накапливало знания, навыки работы, сведения
об окружающем мире, другими словами – собирало информацию.
Вначале информация передавалась из поколения в поколение в виде
преданий и устных рассказов. Возникновение и развитие книжного дела
позволило передавать и хранить информацию в более надежном письменном
виде. Открытия в области электричества привели к появлению
телеграфа, телефона, радио, телевидения – средств, позволяющих
оперативно передавать и накапливать информацию. Развитие прогресса
обусловило резкий рост информации, в связи с чем, вопрос о ее сохранении и
переработке становился год от года острее. С появлением вычислительной
техники значительно упростились способы хранения, а главное, обработки
информации. Развитие вычислительной техники на базе микропроцессоров
приводит к совершенствованию компьютеров и программного обеспечения.
Появляются программы, способные обработать большие потоки информации. С
помощью таких программ создаются информационные системы. Целью любой
информационной системы является обработка данных об объектах и явлениях
реального мира и предоставление человеку нужной информации о них.[11].
Если мы рассмотрим совокупность некоторых объектов, то сможем выделить
объекты, обладающие одинаковыми свойствами. Такие объекты выделяют в
отдельные классы. Внутри выделенного класса объекты можно упорядочивать как
по общим правилам классифицирования, например по алфавиту, так и по
некоторым конкретным общим признакам, например по цвету или материалу.
Группировка объектов по определенным признакам значительно облегчает поиск
и отбор информации. Все эти сведения накапливаются в совокупности файлов
называемой базой данных, а для управления этими файлами создаются
специальные программы – системы управления базами данных (СУБД).[10].
Информационные системы (ИС) можно условно разделить на фактографические и
документальные.
В фактографических ИС регистрируются факты – конкретные значения данных
(атрибутов) об объектах реального мира. Основная идея таких систем
заключается в том, что все сведения об объектах (фамилии людей и названия
предметов, числа, даты) сообщаются компьютеру в каком-то заранее
обусловленном формате (например дата – в виде комбинации ДД.ММ.ГГГГ).
Информация, с которой работает фактографическая ИС, имеет четкую структуру,
позволяющую машине отличать одно данное от другого, например фамилию от
должности человека, дату рождения от роста и т.п. Поэтому фактографическая
система способна давать однозначные ответы на поставленные вопросы.
Документальные ИС обслуживают принципиально иной класс задач, которые не
предполагают однозначного ответа на поставленный вопрос. Базу данных таких
систем образует совокупность неструктурированных текстовых документов
(статьи, книги, рефераты и т.д.) и графических объектов, снабженная тем или
иным формализованным аппаратом поиска. Цель системы, как правило, - выдать
в ответ на запрос пользователя список документов или объектов, в какой-то
мере удовлетворяющих сформулированным в запросе условиям.
Указанная классификация ИС в известной мере устарела, так как современные
фактографические системы часто работают с неструктурированными блоками
информации (текстами, графикой, звуком, видео), снабженными
структурированными описателями. При известных факторах фактографическая
система может превратиться в документальную (и наоборот).[1,11].
Цели данной работы удовлетворяют фактографические ИС, которые используются
буквально во всех сферах человеческой деятельности.

Понятие базы данных.

Существует хорошо известное, но трудно реализуемое на практике понятие базы
данных как большого по объему хранилища, в которое организация помещает все
необходимые ей данные и из которого различные пользователи могут эти данные
получать. Устройства памяти, в которых хранятся все данные, могут быть
расположены в одном или нескольких местах; в последнем случае они должны
быть связаны средствами передачи данных. К данным должны иметь доступ
программы.
Действительно, большинство существующих на сегодняшний день баз данных
предназначено для ограниченного ряда приложений. Часто на одной ЭВМ
создается несколько баз данных. Со временем базы данных, предназначенные
для реализации отдельных родственных функций, можно будет объединить, если
такое объединение будет способствовать увеличению эффективности и
интенсивности использования всей системы.
Базу данных можно определить как совокупность взаимосвязанных
хранящихся вместе данных при наличии такой минимальной избыточности,
которая допускает их использование оптимальным образом для одного или
нескольких приложений; данные запоминаются так, чтобы они были независимы
от программ, использующих эти данные; для добавления новых или модификации
существующих данных, а также для поиска данных в базе данных применяется
общий управляемый способ. [1,12].
Говорят, что система содержит совокупность баз данных, если" эти базы
данных структурно полностью самостоятельны. В системах с простой
организацией данных для каждого приложения создается своя совокупность
записей. Назначение базы данных заключается в том, чтобы одну и ту же
совокупность данных можно было использовать для максимально возможного
числа приложений. Исходя из этого, базу данных часто разрабатывают в
качестве хранилища такой информации, необходимость в котором возникает в
процессе выполнения определенных функций на заводе, правительственном
учреждении или какой-либо другой организации. Такая база данных должна
обеспечивать возможность не только получения информации, но также
постоянной ее модификации, необходимой для процессов управления в данной
организации, может оказаться, что для получения информации для целей
планирования или ответов на вопросы потребуется осуществлять поиск в базе
данных. Совокупностью данных могут пользоваться несколько ведомств
независимо от того, имеются ли при этом между ними ведомственные
барьеры.[12].
База данных может разрабатываться для пакетной обработки данных, обработки
в реальном времени или оперативной обработки (в этом случае обработка
каждого запроса завершается к определенному моменту времени, но при этом на
время обработки не накладывается жестких ограничений, существующих в
системах реального времени). Во многих базах данных предусмотрена
совокупность этих методов обработки, а во многих системах с базами данных
обслуживание терминалов в реальном времени происходит одновременно с
пакетной обработкой данных.[2].
Большая часть дисковых или ленточных библиотек, которые существовали до
использования средств управления базами данных, содержали большое
количество повторяющейся информации. При запоминании многих элементов
данных допускалась избыточность, так как на носители информации для
различных целей записывались одни и те же данные и, кроме того, хранились
различные варианты модификаций одних и тех же данных. База данных
предоставляет возможность в значительной степени избавиться от такой
избыточности. Базу данных иногда определяют как неизбыточную совокупность
элементов данных. Однако в действительности для уменьшения времени доступа
к данным или упрощения способов адресации во многих базах данных
избыточность в незначительной степени присутствует. Некоторые записи
повторяются для того, чтобы обеспечить возможность восстановления данных
при их случайной потере. Чтобы база данных была неизбыточной и
удовлетворяла другим требованиям, приходится идти на компромисс. В этом
случае говорят об управляемой, или минимальной, избыточности или о том, что
хорошо разработанная база данных свободна от излишней избыточности.
Неуправляемая избыточность имеет несколько недостатков. Во-первых, хранение
нескольких копий данных приводит к дополнительным затратам. Во-вторых, при
обновлении, по крайней мере, нескольких избыточных копий необходимо
выполнять многократные операции обновления. Избыточность поэтому обходится
значительно дороже в тех случаях, когда при обработке файлов обновляется
большое количество информации или, что еще хуже, часто вводятся новые
элементы или уничтожаются старые. В-третьих, вследствие того, что различные
копии данных могут соответствовать различным стадиям обновления,
информация, выдаваемая системой, может быть противоречивой.[12].
Если не использовать базы данных, то при обработке большого количества
информации появится так много избыточных данных, что фактически станет
невозможным сохранять их все на одном и том же уровне обновления. Очень
часто пользователи обнаруживают явные противоречия в данных и поэтому
испытывают недоверие к полученной от ЭВМ информации. Невозможность хранения
избыточных данных на одинаковом уровне обновления является основным
препятствием в обработке данных с помощью ЭВМ.
Одной из наиболее важных характеристик большинства баз данных является их
постоянное изменение и расширение. По мере добавления новых типов данных
или при появлении новых приложений должна быть обеспечена возможность
быстрого изменения структуры базы данных. Реорганизация базы данных должна
осуществляться по возможности без перезаписи прикладных программ и в целом
вызывать минимальное количество преобразований. Простота изменения базы
данных может оказать большое влияние на развитие приложений баз данных в
управлении производством.[10].
О независимости данных часто говорят как об одном из основных свойств базы
данных. Под этим подразумевается независимость данных и использующих их
прикладных программ друг от друга в том смысле, что изменение одних не
приводит к изменению других. В частности, прикладной программист изолирован
от влияния изменений данных и их организации, а также от изменения
характеристик физических устройств, на которых они хранятся. В
действительности же полностью независимыми данные бывают так же редко, как
и полностью неизбыточными. Как мы увидим ниже, независимость данных
определяется с различных точек зрения. Сведения, которыми должен
располагать программист для доступа к данным, различны для различных баз
данных. Тем не менее, независимость данных—это одна из основных причин
использования систем управления базами данных.
В том случае, когда один набор элементов данных используется для многих
приложений, между элементами этого набора устанавливается множество
различных взаимосвязей, необходимых для соответствующих прикладных
программ. Организация базы данных в значительной степени зависит от
реализации взаимосвязей между элементами данных и записями, а также от
того, как и где эти данные хранятся. В базе данных, используемой многими
приложениями, должны быть установлены многочисленные промежуточные
взаимосвязи между элементами. В этом случае при хранении и использовании
данных контролировать их правильность, обеспечивать их защиту и секретность
труднее, чем при хранении данных в простых, несвязанных файлах. Что
касается обеспечения секретности данных и восстановления их после сбоев, то
этот вопрос является очень важным при конструировании баз данных.[8].
В некоторых системах средства управления базами данных применяются для
того, чтобы пользователи могли использовать данные таким путем, который не
был предусмотрен разработчиками системы. Администраторы или сотрудники
могут обращаться к вычислительной системе с вопросами, которые заранее в
ней не предусматривались. Наличие этой возможности означает такую
организацию данных в системе, при которой доступ к ним можно осуществлять
по различным путям, причем одни и те же данные могут использоваться для
ответов на различные вопросы. Вся существенная информация об объектах
запоминается одновременно и полностью, а не только та ее часть, которая
необходима для одного приложения. [10].
В настоящее время существуют СУБД, реализующие эти возможности как на
уровне локальных баз данных, расположенных на одном диске (Paradox, Dbase),
так и промышленных баз данных (Acsess, Oracle, FoxPro).

Эволюция концепций баз данных

Понятие база данных появилось в конце 60-х годов. До этого в сфере
обработки данных говорили о файлах данных и о наборах данных.
До появления ЭВМ третьего поколения (первые из них были установлены в 1965
г.) программное обеспечение обработки данных осуществляло в основном
операции ввода-вывода. 0б организации данных приходилось заботиться при
написании прикладных программ, и делалось это элементарным способом, т. е.
данные обычно организовывались в виде простых последовательных файлов на
магнитной ленте. Независимость данных отсутствовала. Если организация
данных или запоминающие устройства изменялись, прикладной программист
должен был соответствующим образом модифицировать программы, заново их
компилировать и затем отлаживать. Для того чтобы обновить файл, нужно было
записать новый. Старый файл сохранялся и назывался исходным. Предыдущий
вариант также сохранялся, а нередко сохранялись и более ранние версии
файла. Многие файлы использовались для одного приложения. Для других
приложений часто использовали те же самые данные, но обычно в другой форме,
с другими полями, и поэтому приходилось из одних и тех же данных создавать
различные файлы. Вследствие этого уровень избыточности в системе был очень
высок и существовали различные файлы, содержащие одни и те же элементы
данных.
Иногда использовались файлы с произвольным доступом к данным, которые
позволяли пользователю получить непосредственный доступ к любой записи в
файле вместо того, чтобы последовательно просматривать весь файл. Средства
адресации записей обеспечивались прикладным программистом при написании
программы. Если изменялись запоминающие устройства, в прикладную программу
необходимо было вносить большие изменения. На практике изменение
запоминающих устройств неизбежно. Новая технология привела к значительному
уменьшению затрат на хранение одного бита информации, а размеры файлов
сегодня часто превышают по объему использовавшиеся ранее запоминающие
устройства.[7].
Этап 2 (конец 60-х годов) характеризуется изменением по сравнению с этапом
1 как природы файлов, так и устройств, на которых они запоминались.
Предпринимается попытка оградить прикладного программиста от влияния
изменений в аппаратуре. Программное обеспечение допускает возможность
изменения физического расположения данных без изменения при этом их
логического представления при условии, что содержимое записей или основная
структура файлов не изменяется.
Файлы, соответствующие этому этапу развития средств обработки данных,
подобно файлам этапа 1, предназначаются для одного приложения или для тесно
связанных между собой приложений.
По мере развития средств обработки коммерческих данных становилось ясно,
что прикладные программы желательно сделать независимыми не только от
изменений в аппаратных средствах хранения файлов и от увеличения размеров
файлов, но также и от добавления к хранимым данным новых полей и новых
взаимосвязей.[7].
Известно, что база данных представляет собой постоянно развивающийся
объект, который используется возрастающим количеством приложений. К базе
данных добавляются новые записи, а в существующие записи включаются новые
элементы данных. Структура базы данных будет изменяться с целью повышения
эффективности ее функционирования и при добавлении новых типов запросов.
Пользователи будут изменять требования и модифицировать типы запросов на
данные.
Структура базы данных является менее статичной, чем файловая структура.
Элементы хранимых данных и способы их запоминания непрерывно изменяются.
Если на организацию данных со стороны вычислительной системы накладывается
ограничение в виде требования постоянства файловой структуры, то это
приводит к тому, что в случае ее изменения программисты тратят много
времени на модификацию существующих программ, вместо того чтобы заниматься
разработкой новых приложений.
в одном случае может сообщаться только имя элемента данных или записи,
которую он хочет получить. В другом случае (при наличии другого
программного обеспечения) он должен был сообщать идентификацию элемента
данных и имя набора, в котором этот элемент данных содержится. Добавление
новых элементов данных в записи без изменения прикладных программ возможно
при том условии, что программное обеспечение связано с данными на уровне
элементов данных (полей), а не на уровне записей. Это часто приводит к
созданию сложных структур данных. Однако хорошее программное обеспечение
баз данных избавляет прикладного программиста от трудностей, связанных со
сложностью структуры. Независимо от того, каким образом данные организованы
на самом деле, прикладной программист должен представлять себе файл в виде
сравнительно простой структуры, которая спланирована в соответствии с его
требованиями.
Программное обеспечение баз данных этапа 3 (начало 70-х годов) располагало
средствами отображения файловой структуры прикладного программиста в такую
физическую структуру данных, которая запоминается на реальном носителе и
наоборот.
В зависимости от уровня программного обеспечения прикладной программист
элемента данных должен также знать организацию файла данных. В этом случае
ему, возможно, придется задать машинный адрес данных. Если отсутствует
независимость данных, прикладному программисту необходимо знать точный
физический формат записи. Самый худший вариант — это случай, когда
программист должен быть навигатором.[7].
Процесс преобразования обращения прикладного программиста к логической
записи или к элементам логической записи в машинные обращения к физической
записи и ее элементам называется привязкой. Привязка — это связь
физического представления данных с программой, которая эти данные
использует. После выполнения процесса привязки программа уже не будет
независимой от физических данных.[7, 3].
Итак, для 3-го этапа:
• Различные логические файлы могли быть получены из одних и тех же
физических данных.
• Доступ к одним и тем же данным осуществлялся различными приложениями
различными путями, отвечающими требованиям этих приложений.
• Программное обеспечение содержало средства уменьшения избыточности
данных.
• Элементы данных являлись общими для различных приложений.
• Физическая структура данных независима от прикладных программ. Ее можно
было изменять с целью повышения эффективности базы данных, не вызывая при
этом модификации прикладных программ,
• Данные адресуются на уровне полей или групп. [7].

По мере накопления опыта использования первых систем управления базами
данных довольно скоро стало очевидно, что необходим дополнительный уровень
независимости данных. Общая логическая структура данных, как правило,
сложная, и по мере роста базы данных она неизбежно изменяется. Поэтому
важно обеспечить возможность изменения общей логической структуры без
изменения используемых при этом многочисленных прикладных программ. В
некоторых системах изменение общей логической структуры данных составляет
форму ее существования, т. е. эта структура находится в состоянии
постоянного развития. Поэтому требуются два уровня независимости данных. Их
называют логической и физической независимостью данных.
Логическая независимость данных означает, что общая логическая структура
данных может быть изменена без изменения прикладных программ (изменение,
конечно, не должно заключаться в удалении из базы данных таких элементов,
которые используются прикладными программами).
Физическая независимость данных означает, что физическое расположение и
организация данных могут изменяться, не вызывая при этом изменений ни общей
логической структуры данных, ни прикладных программ.[7, 8, 3].
Этап 4 характеризуется идей логической и физической независимости данных;
логическая структура данных может сильно отличаться от физической структуры
данных и от их представлений в конкретных прикладных программах.
Программное обеспечение баз данных будет фактически преобразовывать
представление данных прикладного программиста в общее логическое
представление, а затем будет отображать логическое представление в
физическое представление данных.
Назначение такой структуры обеспечивает максимум свободы в изменении
структур данных без переделки при этом выполненной ранее работы по
формированию и использованию базы данных.
• База данных может развиваться без больших затрат на ведение.
• Средства, предусмотренные для администратора данных, позволяют ему
выполнять функции контроллера и обеспечивать сохранность данных.
• Обеспечиваются эффективные процедуры управления защитой секретности,
целостности и безопасности данных.
• В некоторых системах используются инвертированные файлы, позволяющие
осуществлять быстрый поиск данных в базе данных.
• Базы данных конструируются для выдачи ответов на не планируемые заранее
информационные запросы.
• Обеспечиваются средства перемещения данных.[7].

Требования, которым должна удовлетворять организация базы данных.

Изучением этого вопроса долгое время занимались различные группы людей в
учреждениях, использующих ЭВМ, в правительственных комиссиях, на
вычислительных центрах коллективного пользования. Комитет CODASYL
опубликовал отчеты на эту тему (CODASYL—организация, разработавшая язык
КОБОЛ). Организации пользователей IBM SHARE и GUIDE в своем отчете
сформулировали требования к системе управления базами данных. Организация
ACiM (Association for Computing Machinery) также занималась изучением этого
вопроса.
Ниже перечислены основные требования к организации базы данных.

1 Установление многосторонних связей

Различным программистам требуются различные логические файлы. Эти файлы
получаются из одной и той же совокупности данных. Между элементами
запоминаемых данных могут существовать различные связи. Некоторые базы
данных будут содержать сложные переплетения взаимосвязей. Метод организации
данных должен быть таким, чтобы обеспечивалась возможность удобного
представления этих взаимосвязей и быстрого согласования вносимых в них
изменений. Система управления базами данных должна обеспечивать возможность
получения требуемых логических файлов из имеющихся данных и существующих
между ними связей. Необходимо, чтобы существовало хотя бы небольшое
сходство между представлением логического файла в прикладной программе и
способом физического хранения данных.[7, 10, 11].

2 Производительность

Базы данных, специально разработанные для использования их оператором
терминала, обеспечивают время ответа, удовлетворительное для диалога
человека — терминал. Кроме того, система баз данных должна обеспечивать
соответствующую пропускную способность. В системах, рассчитанных на
небольшой поток запросов, пропускная способность накладывает незначительные
ограничения на структуру базы данных. В системах с большим потоком
запросов, например в системах резервирования авиабилетов, пропускная
способность оказывает решающее влияние на выбор организации физического
хранения данных.
В системах, предназначенных только для пакетной обработки, время ответа не
так важно и метод физической организации может выбираться из условий
обеспечения эффективной пакетной обработки.[7, 10, 11].

3 Минимальные затраты

Для уменьшения затрат на создание и эксплуатацию базы данных выбираются
такие методы организации, которые минимизируют требования к внешней памяти.
При использовании этих методов физическое представление данных в памяти
может сильно отличаться от того представления, которое использует
прикладной программист. Преобразование одного представления в другое
осуществляют программное обеспечение либо, если возможно, аппаратные или
микропрограммные средства. В таких случаях приходится выбирать между
затратами на алгоритм преобразования и экономией памяти.[7, 10, 11].

4 Минимальная избыточность

В системах обработки, существовавших до использования систем управления
базами данных, информационные фонды обладали очень высоким уровнем
избыточности. Большинство ленточных библиотек содержало большое количество
избыточных данных. Даже при использовании баз данных по мере возрастания
информации, объединяемой в интегрированные базы данных, потенциальная
возможность появления избыточных данных постепенно увеличивается.
Избыточные данные дороги в том смысле, что они занимают больше памяти, чем
это необходимо, и требуют более одной операции обновления. Целью
организации базы данных должно быть уничтожение избыточных данных там, где
это выгодно, и контроль за теми противоречиями, которые вызываются наличием
избыточных данных.[7, 10, 11].

5 Возможности поиска

Пользователь базы данных может обращаться к ней с самыми различными
вопросами по поводу хранимых данных. В большинстве современных коммерческих
приложений типы запросов предопределены, и физическая организация данных
разрабатывается для их обработки с требуемой скоростью. Возросшие
требования к системам заключаются в обеспечении обработки таких запросов
или формирования таких ответов, которые заранее не запланированы. [7, 10,
11].

6 Целостность

Если база данных содержит данные, используемые многими пользователями,
очень важно, чтобы элементы данных и связи между ними не разрушались.
Необходимо учитывать возможность возникновения ошибок и различного рода
случайных сбоев. Хранение данных, их обновление, процедуры включения данных
должны быть такими, чтобы система в случае возникновения сбоев могла
восстанавливать данные без потерь. Необходимо, чтобы вычислительная система
гарантировала целостность хранимых в ней данных.[7, 10, 11].

7 Безопасность и секретность

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

8 Связь с прошлым

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

9 Связь с будущим

Особенно важной представляется связь с будущим. В будущем данные и среда их
хранения изменятся по многим направлениям. Любая коммерческая организация
со временем претерпевает изменения. Особенно дорогими эти изменения
оказываются для пользователей системами обработки данных. Огромные затраты,
которые требуются для реализации самых простых изменений, сильно тормозят
развитие этих систем. Эти затраты расходуются на преобразование данных,
перезапись и отладку прикладных программ, явившихся результатом внесения
изменений. Со временем число прикладных программ в организации растет, и
поэтому перспектива перезаписи всех этих программ кажется нереальной. Одна
из самых важных задач при разработке баз данных—запланировать базу данных
таким образом, чтобы изменения ее можно было выполнять без модификации
прикладных программ.[7, 10, 11].

10 Простота использования

Средства, которые используются для представления общего логического
описания данных, должны быть простыми и изящными.
Интерфейс программного обеспечения должен быть ориентирован на конечного
пользователя и учитывать возможность того, что пользователь не имеет
необходимой базы знаний по теории баз данных. [7, 10, 11].

Модели представления данных

С ростом популярности СУБД в 70-80-х годах появилось множество различных
моделей данных. У каждой из них имелись свои достоинства и недостатки,
которые сыграли ключевую роль в развитии реляционной модели данных,
появившейся во многом благодаря стремлению упростить и упорядочить первые
модели данных.
Современные БД основываются на  использовании моделей данных (МД),
позволяющих описывать объекты предметных областей и взаимосвязи между
ними существуют три основные МД и их комбинации, на которых основываются
БД: реляционная модель данных (РМД), сетевая модель данных (СМД),
иерархическая модель данных (ИМД).
Основное различие между этими моделями данных состоит в способах описания
взаимодействий между объектами и  атрибутами. Взаимосвязь выражает
отношение между множествами данных.
Используют взаимосвязи "один к одному", "один ко многим" и "многие ко
многим". "Один к одному" - это взаимно однозначное соответствие, которое
устанавливается между одним объектом и одним  атрибутом. "Один ко многим"
- это соответствие между одним объектом и многими атрибутами. "Многие ко
многим" - это соответствие между многими объектами и многими атрибутами.
[10, 11, 12].
Рассмотрим эти модели данных более подробно.

1 Иерархическая модель данных

ИМД основана  на  понятии деревьев, состоящих из вершин и ребер. Вершине 
дерева  ставится в соответствие совокупности атрибутов данных,
характеризующих некоторый объект. Вершины и ребра  дерева  как бы образуют
иерархическую древовидную структуру, состоящую из n уровней.
Первую вершину называют корневой вершиной. Он  удовлетворяет условиям:
1. Иерархия начинается с корневой вершины.
2. Каждая вершина  соответствует одному или нескольким атрибутам.
3. Hа уровнях с большим номером находятся зависимые вершины. Вершин 
предшествующего уровня является начальной для новых зависимых вершин.
4. Каждая вершина, находящаяся на  уровне i, соединена  с одной и только
одной вершиной уровня i-1, за  исключением корневой вершины.
5. Корневая вершина  может быть связана  с одной или несколькими
зависимыми вершинами.
6. Доступ к каждой вершине происходит через корневую по единственному
пути
7. Существует произвольное количество вершин каждого уровня.
Иерархическая модель данных состоит из нескольких деревьев, т.е. является
лесом. Каждая корневая вершин  образует начало записи логической базы
данных. В ИМД вершины, находящиеся на  уровне i, называют порожденными
вершин ми н  уровне i-1.
Операции в ИМД имеют  нелогичный позаписный характер. Аппарат перемещения
по структуре в графовых моделях служит для установки тех объектов
данных, к которым будет применяться очередная операция манипулирования
данными. Такие объекты называются текущими. Механизмы доступа  к данным и
перемещения по структуре данных в таких моделях достаточно сложны и
существенным образом опираются на концепцию текущего состояния механизма 
доступа.[7, 10, 11, 12].
Основные достоинства  ИМД: простота  построения и
использования, обеспечение определенного уровня независимости данных,
простота  оценки операционных характеристик. Основные недостатки:
отношение "многие ко многим" реализуется очень сложно, дает громоздкую
структуру и требует хранения избыточных данных, что особенно нежелательно
на  физическом уровне, иерархическая упорядоченность усложняет операции
удаления и включения, доступ к любой вершине возможен только через
корневую, что увеличивает время доступа.
К числу СУБД иерархического типа  можно отнести PCFocus, Team-Up,
Data Edge,   также разработанную в нашей стране систему HИКА,
преемницу широко распространенной советской системы ИHЕС для ЕС ЭВМ.
Одной из наиболее важных сфер применения первых иерархических СУБД было
планирование производства для компаний, занимающихся выпуском продукции.
Например, если автомобильная компания хотела выпустить 10000 машин одной
модели и 5000 машин другой модели, ей необходимо было знать, сколько
деталей следует заказать у своих поставщиков. Чтобы ответить на этот
вопрос, необходимо определить, из каких деталей состоят эти части и т.д.
Например, машина состоит из двигателя, корпуса и ходовой части; двигатель
состоит из клапанов, цилиндров, свеч и т.д. Работа со списками составных
частей была как будто специально предназначена для компьютеров.
Список составных частей изделия по своей природе является иерархической
структурой. Для хранения данных, имеющих такую структуру, была разработана
иерархическая модель данных, которую иллюстрирует рис. 1.

В этой модели каждая запись базы данных представляла конкретную деталь.
Между записями существовали отношения предокпотомок, связывающие каждую
часть с деталями, входящими в неё.
Чтобы получить доступ к данным, содержащимся в базе данных, программа
могла:
• найти конкретную деталь (правую дверь) по её номеру;
• перейти "вниз" к первому потомку (ручка двери);
• перейти "вверх" к предку (корпус);
• перейти "в сторону" к другому потомку (правая дверь).
Таким образом, для чтения данных из иерархической базы данных требовалось
перемещаться по записям, за один раз переходя на одну запись вверх, вниз
или в сторону.
Ограничения целостности.
Автоматически поддерживается целостность ссылок между предками и потомками.
Основное правило: никакой потомок не может существовать без своего
родителя. Заметим, что аналогичное поддержание целостности по ссылкам между
записями, не входящими в одну иерархию, не поддерживается. [7, 9].
В иерархических системах поддерживалась некоторая форма представлений БД на
основе ограничения иерархии.

2 Сетевая модель данных

Сетевая модель данных замышлялась как инструмент для пользователей баз
данных - программистов. В связи с этим в СМД больше внимания уделяется
структуризации данных, чем развитию ее операционных возможностей.
В СМД элементарные данные и отношения между ними представляются в
виде ориентированной сети (вершины - данные, дуги - отношения).[7].
Если структура данных оказывалась сложнее, чем обычная иерархия, простота
структуры иерархической базы данных становилась её недостатком. Например, в
базе данных для хранения заказов один заказ мог участвовать в трёх
различных отношениях предокпотомок, связывающих заказ с клиентом,
разместившим его, со служащим, принявшим его, и с заказанным товаром, что
иллюстрирует рис. 2. Такие структуры данных не соответствовали строгой
иерархии IMS.
В связи с этим для таких приложений, как обработка заказов, была
разработана новая сетевая модель данных. Она являлась улучшенной
иерархической моделью, в которой одна запись могла участвовать в нескольких
отношениях предокпотомок. В сетевой модели такие отношения назывались
множествами. В 1971 году на конференции по языкам систем данных был
опубликован официальный стандарт сетевых баз данных, который известен как
модель CODASYL. Компания IBM не стала разрабатывать собственную сетевую
СУБД и вместо этого продолжала наращивать возможность IMS. Но в 70-х годах
независимые производители программного обеспечения реализовали сетевую
модель в таких продуктах, как IDMS компании Cullinet, Total компании Cincom
и СУБД Adabas, которые приобрели большую популярность.
Сетевые базы данных обладали рядом преимуществ:
• Гибкость. Множественные отношения предокпотомок позволяли сетевой базе
данных хранить данные, структура которых была сложнее простой иерархии.
• Стандартизация. Появление стандарта CODASYL популярность сетевой модели,
а такие поставщики мини-компьютеров, как Digital Equipment Corporation и
Data General, реализовали сетевые СУБД.
• Быстродействие. Вопреки своей большой сложности, сетевые базы данных
достигали быстродействия, сравнимого с быстродействием иерархических баз
данных. Множества были представлены указателями на физические записи
данных, и в некоторых системах администратор мог задать кластеризацию
данных на основе множества отношений.
Конечно, у сетевых баз данных были недостатки. Как и иерархические базы
данных, сетевые базе данных были очень жесткими. Наборы отношений и
структуру записей приходилось задавать наперёд. Изменение структуры базы
данных обычно означало перестройку всей базы данных.
Как иерархическая, так и сетевая база данных были инструментами
программистов. Чтобы получить ответ на вопрос типа "Какой товар наиболее
часто заказывает компания Acme Manufacturing?", программисту приходилось
писать программу для навигации по базе данных. Реализация пользовательских
запросов часто затягивалась на недели и месяцы, и к моменту появления
программы информация, которую она предоставляла, часто оказывалась
бесполезной.[7, 10].
Ограничения целостности.
В принципе их поддержание не требуется, но иногда требуют целостности по
ссылкам (как в иерархической модели).

3 Реляционная модель данных

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

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

Реляционной называется база данных, в которой все данные, доступные
пользователю, организованны в виде таблиц, а все операции над данными
сводятся к операциям над этими таблицами.
Приведенное определение не оставляет места встроенным указателям, имеющимся
в иерархических и сетевых СУБД. Несмотря на это, реляционная СУБД также
способна реализовать отношения предокпотомок, однако эти отношения
представлены исключительно значениями данных, содержащихся в таблицах.
Поскольку в программной реализации дипломной работы избран реляционный
подход, как наиболее подходящий, опишем его более подробно.[3, 7, 8, 12].

1 Таблицы

Таблицы – фундаментальные объекты реляционной базы данных, в которых
хранится основная часть данных приложения. Отдельная таблица чаще всего
хранит информацию по конкретной теме (например, сведения о служащих
компании или адреса заказчиков). Информация в таблице организуется в строки
(записи) и столбцы (поля). Таблице присущи два компонента: структура
таблицы и данные таблицы.
Структура таблицы (также называется определением таблицы) специфицируется
при создании таблицы. Структура таблицы должна быть спроектирована и
создана перед вводом в таблицу каких-либо данных. Она определяет, какие
данные таблица будет хранить, а также правила, ассоциированные с вводом,
изменением или удалением данных (бизнес-правила, или ограничения).
Структура таблицы включает следующую информацию:
• Имя таблицы - Имя, по которому к таблице можно обратиться в свойствах,
методах и операторах SQL.
• Столбцы таблицы - Категории информации, сохраненной в таблице. Каждый
столбец имеет имя и тип данного.
• Табличные и столбцовые ограничения - Ограничения целостности,
определенные на уровне таблицы или на уровне столбца.[3, 7, 8, 12].
Более наглядно структуру таблицы иллюстрирует рис 4., на котором ... продолжение

Вы можете абсолютно на бесплатной основе полностью просмотреть эту работу через наше приложение.
Похожие работы
Об анализе проектирования баз данных, а также освещению методов построения форм и отчетов на примере построения программы ведения электронной документации учебного заведения
Анализ проектирования баз данных, а также освещению методов построения форм и отчетов на примере построения программы ведения электронной документации учебного заведения
ПРОГРАММА ОБУЧЕНИЯ ПО ДИСЦИПЛИНЕ (Syllabus)
Разработка методов и моделей проектирования образовательного портала для управления учебным процессом вуза
Организация рекламной работы в предприятии Казахстана
Образовательная программа
ХАРАКТЕРИСТИКА РЫНКА ОБРАЗОВАТЕЛЬНЫХ УСЛУГ
ОТЧЕТ ПО САМООЦЕНКЕ ОБРАЗОВАТЕЛЬНОЙ ПРОГРАММЫ 5В011800 «РУССКИЙ ЯЗЫК И ЛИТЕРАТУРА»
Российские судебные ораторы второй половины XIX начала XX века
Создание электроннного учебника в программной среде Macromedia Flash
Дисциплины