Материал: ЛР 3

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Министерство образования Республики Беларусь

Учреждение образования

БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ

Инженерно-экономический факультет

Кафедра экономической информатики

ОТЧЕТ

по лабораторной работе

«УСЛОЖНЕННЫЕ ДИАГРАММЫ СУЩНОСТЬ-СВЯЗЬ»

Студент

Проверил Рудак А. И.

Минск 2022

Цель работы

  1. Ознакомиться со способом формирования рекурсивных связей.

  2. Освоить построение иерархии наследования и вариантов ее трансформы на уровне физической модели.

  3. Изучить процессы синхронизации системного каталога базы данных и модели данных.

Задачи

  1. Формирование неидентифицирующих рекурсивных связей типа 1:М. 

  2. Создание на уровне логической модели иерархии наследования.

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

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

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

Краткие теоретические сведения

Связь называется рекурсивной, если одна и та же сущность является и родительской и дочерней одновременно. При задании рекурсивной связи атрибут должен мигрировать в качестве внешнего ключа в состав неключевых атрибутов той же сущности. Атрибут не может появиться дважды в одной сущности под одним именем, поэтому обязательно должен получить другое имя – имя роли. На рис. 2.1 сущность Сотрудник имеет первичный ключ Таб №. Информация о руководителе сотрудника содержится в той же сущности, поскольку руководитель работает в той же организации. Чтобы сослаться на руководителя сотрудника следует создать рекурсивную связь (на рис. 2.1 связь «руководит») и присвоить имя роли «Руководитель». Необходимо отметить, что рекурсивная связь может быть только неидентифицирующей. В противном случае внешний ключ должен был бы войти в состав первичного ключа и получить свойство NOT NULL. Это сделало бы невозможным построение иерархии, так как у дерева подчиненности должен быть корень – сотрудник, который никому не подчиняется в рамках данной организации.

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

Рис. 2.1. Рекурсивная связь

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

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

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

Индивидуальное задание

Создать в Erwin модель с именем Фирма. Тип модели – Логическая/Физическая, целевая база данных – Access. Логическая модель должна включить 5 сущностей.

Результат работы

  1. Настройка атрибутов

Рисунок 1 – Установление сущностей

  1. Установление неидентифицирующей, идентифицирующей 1:М связей, а также рекурсивной связи

Рисунок 2 – Связи между сущностями

  1. Создание новой сущности Движение

Рисунок 3 – Сущность Движение

  1. Создание категориальной связи между другими сущностями и движением

Рисунок 4 – Установка новых связей

  1. Устанавливаем связь между МатОтветственный и Перемещение. Устанавливаем для атрибутов НомерПодразделения и ТабельныйНомер роли (Куда и Кому).

Рисунок 5 – Установление новых связей

Рисунок 6 – Перенос из Erwin в Access

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

  1. Удаляем старый файл Access Фирма.mdb и создаем пустую. Снова переносим данные из Erwin в Access. В результате получаем:

Выводы

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

Источник: https://studfile.net/preview/16647966/