Связи в реляционной модели

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

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

Сущности и атрибуты в реляционной модели

Таблицы в реляционной СУБД состоят из строк данных, однородных по своей природе. Другими словами, каждая строка таблицы описывает один экземпляр некоторой сущности, причем набор атрибутов каждого экземпляра постоянен.
Предположим, в базе данных хранится информация о служащих. Таблица "покупатель" содержит 3 колонки и 4 строки:

Имя Адрес Идент. карты
Сидоров 1 улица 8 марта  
Иванов 2 улица 8 марта  
Петров 3 улица 8 марта  
Павлов 4 улица 8 марта  

Имя таблицы и имена ее колонок составляют структуру таблицы: customer (name, address, card_id). В реляционной модели все значения данных являются атомарными, т.е. нельзя в клетке таблицы хранить список значений.
Таблицы в реляционной модели соответствуют (не обязательно совпадают по имени) сущностям, а колонки - атрибутам.

Связи в реляционной модели

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: