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


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

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



 

Что такое база данных

Под базой данных (БД) понимается хранилище данных принадлежащих некоторой области. Хранение этих данных должно быть некоторым образом организовано – структурировано, при этом хранящиеся данные должны быть непротиворечивы, минимально избыточны и целостны. Что под этим понимается, будет рассмотрено ниже.

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

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

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

В своем развитии структуры (формы организации хранения данных), прошли несколько этапов:

· иерархическая структура

· сетевая структура

· реляционная структура.

 

Основной идеей иерархических структур является наличие указателей определяющих взаимоотношение уровней иерархии. Рассмотрим пример.

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

Пусть программистом разработана программа «Склад». Эта программа ведет учет товаров и клиентов. Т.е. мы имеем некоторый программный продукт, организованный по уровням иерархической структуры: Склад – Клиенты – Товары.

 

Рис.1 Рис.2

Для того чтобы, в иерархической БД Рис.1, определить какие товары заказал Клиент 2 необходимо, войти на Склад 3, спуститься к Клиенту 2, далее спуститься к одному из товаров, далее подняться снова к Клиенту 2 и спуститься к следующему товару.

Достоинством иерархической структуры является понятность, простота реализации, и относительная легкость навигации.

К недостаткам следует отнести чрезмерную жесткость структуры: Элементы нижнего уровня иерархии, жестко привязаны к одному конкретному элементам верхнего уровня.

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

Для придания БД большей гибкости были разработаны сетевые структуры, основным преимуществом которых явилась множественность, т.е. возможность принадлежности элементов нижнего уровня, различным элементам верхнего уровня иерархии. Рис.2

Конечно, у сетевых БД были недостатки. Как и иерархические БД, сетевые базы данных были очень жесткими. Структуру приходилось задавать наперёд. Изменение же структуры базы данных обычно означало перестройку всей базы данных.

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

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

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

Первые реляционные программные продукты стали появляться в конце 1970-х – начале 1980-х годов. Сегодня таких продуктов более 200. Среди них такие как:

  1. DB2 корпорации IBM;
  2. ORACLE корпорации Oracle;
  3. INGRES компании Ingres Division of The ASK Group Inc.;
  4. SYBASE компании Sybase Inc.;
  5. IB Database компании Borland и многие другие.

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

 

Определение реляционной БД:

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

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


Таблицы и сущности

Таблицы

В реляционной базе данных информация организована в виде таблиц.

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

Строки ни имени, ни номера не имеют. Столбцы таблицы обязаны иметь имена. Рис.3

 

Факультеты Студенты

Факультет Декан   Фамилия Имя Год
ЭФ Колесов   Шаров Михаил  
ММ Лупанов   Корнетов Алексей  
ВМК Моисеев   Алисов Николай  
ФФ     Никитин Михаил  
ФФ     Федоров Юрий  

 

Рис.3 Рис.4

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

Все значения, содержащиеся в одном и том же столбце, являются данными одного типа (текст, число, дата,…)

  • На пересечении каждой строки с каждым столбцом таблицы содержится в точности одно значение данных.

Пересечение строки и столбца образует элементарное значение данных, которое является наименьшей единицей данных в РБД. Такие значения рассматриваются как атомарные, т.е. они неразложимы.

 

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

В стандарте ANSI/ISO не указывается максимально допустимое число столбцов в таблице, однако почти во всех коммерческих БД этот предел существует и обычно составляет примерно 255 столбцов.

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

В таблице может содержаться любое количество строк. Допускается существование таблицы с нулевым количеством строк. Такая таблица называется пустой. Пустая таблица сохраняет структуру, определённую её столбцами, просто в ней не содержится данные. Стандарт ANSI/ISO не накладывает ограничений на количество строк в таблице, и во многих БД размер таблиц ограничен лишь свободным дисковым пространством компьютера. В других БД имеется максимальный предел, однако он весьма высок - около двух миллиардов строк, а иногда и больше.


Сущности

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

 

Таблица является хранилищем информационной сущности. Правила хранения информации рассматриваются ниже в разделе «Целостность реляционных данных»

 

Сущности подразделяют на три основных класса:

  1. стержни – это независимые сущности. Например, таблица «Факультеты»
  2. ассоциации – это связи между двумя и более сущностями. Например, таблицы «Факультеты» и «Студенты»
  3. характеристики – это сущности, цель которых описание или уточнение других сущностей.

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

Правила отношений сущностей рассматривается в разделе «Реляционные отношения между таблицами (сущностями)»



Поделиться:


Последнее изменение этой страницы: 2016-08-26; просмотров: 1312; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.218.172.249 (0.008 с.)