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



ЗНАЕТЕ ЛИ ВЫ?

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

Поиск

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

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

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

id title author_id subject_id class_n publisher_id publish_year quantity
               
  Электромагнитные явления            
               
               
  Механика            

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

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

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

Термины реляционной модели

Для описания баз данных в реляционной модели говорят не о “таблицах”, “строках” и “столбцах”. Используется целый набор терминов. Фразы вроде “идентификатор есть уникальный атрибут сущности” кажутся абсолютно непонятными; причём строгое обоснование всех этих терминов требует понимания реляционной алгебры. Однако, к счастью, реально все эти термины очень просто связать с обыкновенными таблицами.

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

Название Автор Предмет Класс Издательство Год издания Количество
             

Строк в этой таблице может быть сколько угодно. Они представляют конкретные книги: каждая строка таблицы отражает одну книгу. В таком случае говорят, что таблица описывает сущность под названием “Книга”; а каждая из строк описывает экземпляр этой сущности. Каждый столбец – это то или иное свойство книги, её атрибут.

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

Итак, три самых важных термина реляционной модели:

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

Необходимо различать такие понятия, как тип сущности и экземпляр сущности. Понятие тип сущности относится к набору однородных личностей, предметов, событий или идей, выступающих как целое. Экземпляр сущности относится к конкретной вещи в наборе. Например, типом сущности может быть ГОРОД, а экземпляром – Москва, Киев и т.д.

Атрибут – поименованная характеристика сущности, информационное отображение свойств объекта. Каждый объект характеризуется набором атрибутов. Его наименование должно быть уникальным для конкретного типа сущности, но может быть одинаковым для различного типа сущностей (например, ЦВЕТ может быть определен для многих сущностей: СОБАКА, АВТОМОБИЛЬ, ДЫМ и т.д.). Атрибуты используются для определения того, какая информация должна быть собрана о сущности. Примерами атрибутов для сущности АВТОМОБИЛЬ являются ТИП, МАРКА, НОМЕРНОЙ ЗНАК, ЦВЕТ и т.д. Здесь также существует различие между типом и экземпляром. Тип атрибута ЦВЕТ имеет много экземпляров или значений: Красный, Синий, Банановый, Белая ночь и т.д., однако каждому экземпляру сущности присваивается только одно значение атрибута.

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

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

Сущность Таблица
Атрибут Столбец таблицы (поле)
Экземпляр сущности Строка таблицы (запись)
Связь Ассоциирование двух или более таблиц

Таблица – упорядоченная структура, состоящая из конечного набора однотипных записей.



Поделиться:


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

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