Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БД Лабораторный практикум.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
723.46 Кб
Скачать

Задание к работе

Раздел I. Создание сущностей логической модели

1. Создайте в ERwin модель с именем Firma. Тип модели – Логическая/Физическая, целевая база данных – Access. В качестве шрифта по умолчанию установите любой кириллический шрифт, например Arial CYR (команда меню Format►Default Fonts & Colors, далее вкладки: General и Drawing Object Text). Логическая модель должна включать в себя следующие 5 сущностей:

1) сущность Подразделение

Атрибут Домен Обязательный атрибут Первичный ключ

Номер подразделения Number Да Да

Имя подразделения String Да

2) сущность Сотрудник

Атрибут Домен Обязательный атрибут Первичный ключ

Табельный номер Number Да Да

ФИО String Да

Должность String

Оклад Number

3) сущность Приход

Атрибут Домен Обязательный атрибут Первичный ключ

Дата операции Datetime Да Да

Номер документа Number Да Да

Код товара Number Да

Имя товара String

Ед_измерения String

Количество Number Да

Покупная цена Number

4) сущность Расход

Атрибут Домен Обязательный атрибут Первичный ключ

Дата операции Datetime Да Да

Номер документа Number Да Да

Код товара Number Да

Имя товара String

Ед_измерения String

Количество Number Да

Отпускная цена Number

5) сущность Перемещение

Атрибут Домен Обязательный атрибут Первичный ключ

Дата операции Datetime Да Да

Номер документа Number Да Да

Код товара Number Да

Имя товара String

Ед_измерения String

Количество Number Да

Учетная цена Number

2. Сохраните модель данных на жестком диске в файле Firma.er1.

Раздел II. Создание связей между сущностями и иерархии наследования

1. Создайте неидентифицирующую связь один ко многим (1:М) между родительской сущностью Подразделение и дочерней сущностью Сотрудник.

2. Создайте неидентифицирующую рекурсивную связь 1:М для сущности Подразделение. Для этой связи в свойстве Имя роли (Rolename) укажите имя роли как «Вышестоящее». Включите режим отображения полного имени атрибута, состоящего из имени роли и имени атрибута, разделеных точкой.

3. Создайте неидентифицирующую рекурсивную связь 1:М для сущности Сотрудник. Для этой связи в свойстве Имя роли (Rolename) укажите имя роли как «Руководитель».

4. Создайте новую пустую сущность с именем МатОтветственный.

5. Создайте идентифицирующую связь один ко многим (1:М) между родительской сущностью Подразделение и дочерней сущностью МатОтветственный.

6. Создайте идентифицирующую связь 1:М между родительской сущностью Сотрудник и дочерней сущностью МатОтветственный.

7. Создайте иерархию наследования на основе сущностей Приход, Расход и Перемещение. Для этого нужно создать новую пустую сущность Движение, разместив ее над указанными выше сущностями, после чего переместить в новую сущность общие атрибуты сущностей Приход, Расход и Перемещение, оставив в последних только уникальные атрибуты. Кроме того, в сущность Движение добавьте новый атрибут Тип документа (домен String), который будет служить в качестве дискриминатора, т.е. отличать одну категориальную сущность от другой. Далее нужно создать категориальную связь (кнопка Complete sub-category) между новой сущностью и сущностью Приход. Затем категориальная связь устанавливается между значком категории и сущностью Расход, после чего аналогичным образом связывается и сущность Перемещение. В заключение щелкните правой кнопкой мыши по значку категории и выберите в контекстном меню пункт Subtype Relationships, открыв тем самым диалоговое окно Subtype Relationships. Далее в списке Discriminator Attribute Choice укажите атрибут Тип документа в качестве дискриминатора категории.

8. Создайте неидентифицирующую связь 1:М между родительской сущностью МатОтветственный и дочерней сущностью Движение.

9. Создайте неидентифицирующую связь 1:М между родительской сущностью МатОтветственный и дочерней сущностью Перемещение. Для этой связи в свойстве Имя роли укажите имена ролей для атрибутов Номер подразделения и Табельный номер как «Куда» и «К кому» соответственно.

10. Переключившись в режим показа физической модели проверьте и, в случае необходимости, скорректируйте типы и длины полей, ориентируясь на специфику типов данных СУБД Access. В частности, поле Количество должно иметь тип Single, а поля Учетная цена, Отпускная цена, Покупная цена - тип Currency.

11. Сохраните текущую модель данных на жестком диске.