Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СУБД Практикум (Н.Л. КЕЛЛЕР, О.Ю. ЛИТКОВИЧ).docx
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
2.02 Mб
Скачать

Проектирование по методу erd-модели

Имеется целый ряд методик создания информационно-логиеских моделей. Наиболее популярна в настоящее время методика с использованием ERD (entity-relationship diagram). В русскоязычной литературе эти диаграммы называют объект—отношение, либо сущность – связь, либо ER-метод.

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

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

Причем база данных хранит не только рабочие данные этой организации, но и их описания. По этой причине базу данных еще называют набором, интегрированных записей с самоописанием. В совокупности, описание данных называется системным каталогом (system catalog), или словарем данных (data dictionary), а сами элементы описания принято называть метаданными (meta-data), т.е. "данными о данных". Именно наличие самоописания данных в базе данных обеспечивает в ней независи­мость между программами и данными (program-data independence).

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

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

И, наконец, следует объяснить последний термин из определения базы данных, а именно понятие "логически связанный". При анализе информационных потребностей организации следует выделить сущности, атрибуты и связи.

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

Атрибутом (attribute) называется свойство, которое описывает некоторую характеристику описываемого объекта.

Связь (relationship) — это то, что объединяет несколько сущностей.

Например, на рис. 4 показана так называемая диаграмма "сущность-связь", или ER-диаграмма (Entity-Relationship — ER), для некоторой части проекта «Агентство недвижимости». Она состоит из следующих компонентов:

• шести сущностей (которые обозначены прямоугольниками): Branch (Отделение), Staff (Работник), Property_for Rent (Сдаваемый в аренду объ­ект), Owner (Владелец), Renter (Арендатор) и Viewing (Осмотр);

• шести связей (которые обозначены ромбиками): IsAllocated (Работает в), Has (Имеет), Oversees (Отвечает), Owns (Владеет), Requests (Запрашивает) и Takes (Проводится).

Рис. 4. Пример диаграммы "сущность-связь"

Подобная база данных представляет сущности, атрибуты и логические связи между объектами. Иначе говоря, база данных содержит логически связанные данные.