Материал: Базы данных и их безопасность. Плотников Д.Г

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

Задание 2.

Дины отношения, моделирующие работу международной фирмы, имеющей несколько филиалов. Филиалы фирмы могут быть расположены в разных странах, это отряжено в отношении R1 (табл. 3.23). Клиенты фирмы также могут быть из разных стран, и это отражено в отношении R4 (табл. 3.26). По каждому конкретному заказу клиент мог заказать несколько разных товаров (табл. 3.24, 3.25).

Таблица 3.23

 

 

 

«Филиал»

 

 

 

 

R1

 

 

 

 

Филиал

 

 

Страна

 

 

 

 

 

 

 

 

Таблица 3.24

 

 

 

 

 

 

 

 

 

«Филиал»

 

 

 

 

R2

 

 

 

 

 

 

Филиал

Заказчик

№ заказа

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 3.25

 

 

 

«Заказ»

 

 

 

 

R3

 

 

 

 

 

 

№ заказа

 

Товар

Количество

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 3.26

 

 

 

«Заказчик»

 

 

 

 

R4

 

 

 

 

Заказчик

 

 

Страна

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

С использованием реляционной алгебры составить запросы, позволяющие выбрать:

1) Заказчиков, которые работают со всеми филиалами фирмы, но покупают только один товар.

81

2)Филиалы фирмы, которые торгуют всеми товарами.

3)Товары, которые работают с филиалами фирмы, которые расположены только в одной стране.

4)Заказчиков, которые работают с филиалами фирмы, которые расположены только в одной стране.

5)Филиалы, с которыми не работает ни один заказчик.

6)Заказчиков, которые работают только с филиалами, расположенными в той же стране, что и заказчик.

7)Заказчиков, которые покупают все товары, представленные в отношении R3.

Задание 3.

Даны отношения, моделирующие работу фирмы, занимающейся разработкой программных систем (табл. 3.27- 3.29). Каждый сотрудник административно закреплен только за одним отделом. Файлы хранятся на разных серверах. На разных серверах файлы могут иметь одинаковые имена. Создатель файла является его владельцем, поэтому у каждого файла только один владелец, но владелец файла может разрешить пользоваться файлом другим сотрудникам. Существует множество системного программного обеспечения, каждая программа может работать с одним или с несколькими файлами, расположенными на одном или нескольких серверах.

82

 

 

 

 

Таблица 3.27

 

«Сотрудник»

 

 

 

 

R1

 

 

R4

 

Название файла

Имя владельца файла

 

Сотрудник

Отдел

 

 

 

 

 

 

 

Таблица 3.28

«Программа»

 

R2

 

Название программы

Название файла

Сервер

 

 

 

Таблица 3.29

 

«Файл»

 

R3

Название файла

Название сервера

 

 

83

С использованием реляционной алгебры составить запросы, позволяющие выбрать:

1.Файлы, которые имеют нескольких пользователей из разных отделов.

2.Программы, которые работают только с одним

файлом.

3.Файлы, которые имеют одно и тоже имя, но расположены на различных серверах и используются сотрудниками разных отделов.

4.Файлы, с которыми работают сотрудники всех

отделов.

5.Файлы, пользователями которых являются сотрудники только одного отдела.

6.Программы, которые работают со всеми

серверами.

7.Отделы, сотрудники которых не работают ни с одним файлом. То есть отделы, в которых нет ни одного сотрудника, работающего с каким-нибудь файлом.

8.Отделы, сотрудники которых работают со всеми

серверами.

9.Серверы, с которыми работают сотрудники только одного отдела.

84

4. ЗАДАЧИ И ЭТАПЫ ПРОЕКТИРОВАНИЯ БАЗ ДАННЫХ. ИСПОЛЬЗОВАНИЕ НОРМАЛЬНЫХ ФОРМ ПРИ ПРОЕКТИРОВАНИИ ПРИЛОЖЕНИЙ В РЕЛЯЦИОННЫХ СУБД. ЭТАПЫ НОРМАЛИЗАЦИИ ОТНОШЕНИЙ. МЕТОДОЛОГИИ ПРОЕКТИРОВАНИЯ

4.1. Этапы проектирования баз данных

Проектирование реляционных БД на основе принципов нормализации.

Что такое проект? Это схема - эскиз некоторого устройства, который в дальнейшем будет воплощен в реальность. Что такое проект реляционной базы данных? Это набор взаимосвязанных отношений, в которых определены все атрибуты, заданы первичные ключи отношений и заданы еще некоторые дополнительные свойства отношений, которые относятся к принципам поддержки целостности. Почему именно взаимосвязанных отношений? Потому что при выполнении запросов мы производим объединение отношений, и одни и те же значения должны в разных отношенияхтаблицах обозначаться одинаково. Действительно, если мы в одной таблице оценки будем обозначать цифрами, а в другой словами «отлично», «хорошо» и т. д., то мы не сможем объединить эти таблицы по столбцу Оценка, хотя по смыслу это для нас одно и то же, но то, что интуитивно понятно человеку, совсем не понятно «умному» компьютеру. Это проблема систем с искусственным интеллектом, которые могут решать весьма сложные интеллектуальные задачи, трудные для рядового инженера, но иногда пасуют перед простейшими интуитивными ассоциациями, понятными любому школьнику. И это необходимо учитывать. Поэтому проект базы данных должен быть очень точен и выверен. Фактически проект базы данных – это фундамент будущего программного комплекса, который будет использоваться достаточно долго и многими пользователями. И как в любом здании, можно достраивать мансарды, переделывать крышу, можно даже менять окна, но

85

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