Основные понятия и принципы программирования баз данных

Автор работы: Пользователь скрыл имя, 15 Декабря 2011 в 20:07, курсовая работа

Краткое описание

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

Содержимое работы - 1 файл

введ, главы, закл, литра.doc

— 326.00 Кб (Скачать файл)
p align="justify">   Сама  система управления базами данных - системное программное обеспечение. Не решая непосредственно никакой прикладной задачи система управления базами данных является инструментом для разработки прикладных программ и поддержания базы данных, с помощью которого можно создавать базы данных, наполнять их и работать с ними.

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

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

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

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

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

1.2 Модели  баз данных

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

     В настоящее время наибольшее  применение получили иерархическая,  сетевая и реляционная модели данных.

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

   Иерархическая структура представляет совокупность элементов, связанных между собой  по определенным правилам.

   Часто объекты находятся в отношениях, которые принято называть иерархическими: например, отношение часть - целая (например, автомобиль состоит из кузова, двигателя,  колес и т.д.); родовидовое отношение (например, автомобили бывают грузовые, легковые и др.); отношения    подчиненности (например, ректор — декан и многие другие).

   Объекты, связанные иерархическими отношениями, образуют дерево «ориентированный граф», у которого имеется только одна вершина, не подчиненная никакой другой вершине (эту вершину принято называть корнем дерева); любая другая вершина графа подчинена лишь только одной другой вершине.

   К основным понятиям иерархической структуры  относятся: уровень, элемент (узел), связь.

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

   Автоматически поддерживается целостность ссылок между предками и потомками. Основное правило показано на рисунке 5: никакой потомок не может существовать без своего родителя.

   

    
 

Рисунок 5 - Схема иерархической модели данных

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

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

   Сетевой подход к организации данных является расширением иерархического.

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

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

     
 
 

Рисунок 6 - Схема сетевой модели данных

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

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

   Реляционная модель ориентирована на организацию  данных в виде двумерных таблиц. Каждая реляционная таблица представляет собой двумерный массив и обладает следующими свойствами:

   -каждый  элемент таблицы - одни элемент  данных;

   -все  столбцы в таблице однородные, т.е. все элементы в столбце  имеют одинаковый тип (числовой, символьный) и длину;

   -каждый  столбец имеет уникальное имя;

   -одинаковые  строки в таблице отсутствуют;

   -порядок  следования строк и столбцов  может быть произвольным.

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

   В реляционной базе данных используются четыре основных типов полей:

Числовой, Символьный (слова, тексты, коды и т.д.), Дата (календарные даты в форме «день/месяц/год»), Логический (принимает два значения: «да» - «нет» или «истина» - «ложь»).

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

   

   Рисунок 7 - Схема реляционной модели данных

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

   Понятие реляционный связано с разработками известного американского специалиста  в области систем баз данных Е. Кодда.

   Доктор  Кодд определил 13 правил реляционной модели (которые называют 12 правилами Кодда):

   1.Реляционная система управления базой данных должна быть способна полностью управлять базой данных через ее реляционные возможности.

   2.Информационное правило - вся информация в реляционной базе данных (включая имена таблиц и столбцов) должна определяться строго как значения в таблицах.

   3.Гарантированный доступ - любое значение в реляционной базе данных должно быть гарантированно доступно для использования через комбинацию имени таблицы, значения первичного ключа и имени столбца

   4.Поддержка пустых значений - система управления базой данных должна уметь работать с пустыми значениями (неизвестными или неиспользованными значениями), в отличие от значений по умолчанию и независимо для любых доменов.

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

   6.Исчерпывающий язык управления данными - по крайней мере, один из поддерживаемых языков должен иметь четко определенный синтаксис и быть всеобъемлющим. Он должен поддерживать описание структуры данных и манипулирование ими, правила целостности, авторизацию и транзакции.

   7.Правило обновления представлений - все представления, теоретически обновляемые, могут быть обновлены через систему.

   8.Вставка, обновление и удаление - система управления базой данных поддерживает не только запрос на отбор данных, но и вставку, обновление и удаление.

   9.Физическая независимость данных - на программы-приложения и специальные программы логически не влияют изменения физических методов доступа к данным и структур хранилищ данных.

   10.Логическая независимость данных - на программы-приложения и специальные программы логически не влияют, в пределах разумного, изменения структур таблиц.

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

   12.Независимость распределения - на программы-приложения и специальные программы логически не влияет, первый раз используются данные или повторно.

   13.Неподрывность - невозможность обойти правила целостности, определенные через язык базы данных, использованием языков низкого уровня

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

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

   Модель  данных, или концептуальное описание предметной области - самый абстрактный  уровень проектирования баз данных.

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

   -все данные представляются в виде упорядоченной структуры, определенной в виде строк и столбцов и называемой отношением;

   -все значения являются скалярами. Это означает, что для любой строки и столбца любого отношения существует одно и только одно значение;

   -все операции выполняются над целым отношением, и результатом их выполнения также является целое отношение. Этот принцип называется замыканием

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

   Каждая  строка, содержащая данные, называется кортежем, каждый столбец отношения называется атрибутом.

Информация о работе Основные понятия и принципы программирования баз данных