русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Декомпозиция универсального отношения


Дата добавления: 2013-12-23; просмотров: 2488; Нарушение авторских прав


Выявление функциональных зависимостей

Общая схема проектирования баз данных методом декомпозиции

 

Шаг 1. Построение универсального отношения.

Шаг 2. Определение всех функциональных зависимостей, существующих между атрибутами универсального отношения.

Шаг 3. Удаление всех избыточных функциональных зависимостей.

Шаг 4. Определяем, находится ли отношение в НФБК, если да - проектирование закончить, если нет – отношение разбивается на два.

Шаг 5. Шаги 4 и 5 повторяются для всех отношений, полученных в результате декомпозиции, до тех пор пока все отношения не будут находиться в НФБК.

 

6.9. Проектирование базы данных по предметной области “Начальник отдела”.

 

Возвратимся снова к примеру базы данных “Начальник отдела”.

 

Рис. 6.26 Универсально отношение R (Сном, Сфам, Тном, Лном, Проект, Квартал, Вклад)

 

Детерминанты не являющиеся возможными ключами:

Сном
Лном
Тном

 

Возможным ключом является Сфам, Проект, Квартал.

Универсальное отношенияе R (Сном, Сфам, Тном, Лном, Проект, Квартал, Вклад)

и не находится в НФБК и нуждается в декомпозиции.

 

 

В данном отношение содержаться следующие цепочки функциональных зависимостей:

 

Сном ® Лном ®Тном

Сном ® Тном ® Лном

Сном, Проект, Квартал®Вклад

 

 

На рисунках 6.3-6.5 изображены диаграммы функциональных зависимостей отношений, полученых из универсального отношения в процессе его декомпозиции.

 

Производим декомпозицию отношения R (Сном, Сфам, Тном, Лном, Проект, Квартал, Вклад) на

R 1 (Лном, Тном) и R2 (Сном, Сфам, Лном, Проект, Квартал, Вклад).

 

 

Возможные ключи: Лном, Тном Детерминанты: Лном, Тном Отнонение находится в НФБК
Рис. 6.27 Отношение R 1 (Лном, Тном)

 



 

Возможные ключи: <Проект, Квартал, Вклад> Детерминанты: <Проект, Квартал, Вклад> Сном Отношение не находится в НФБК.
Рис. 6.28 Отношение R2 (Сном, Сфам, Лном, Проект, Квартал, Вклад)

 

 

Произведем декомпозицию отношения R2 (Сном, Сфам, Лном, Проект, Квартал, Вклад) на

R3 (Сном, Сфам, Лном) и R4 (Сном, Проект, Квартал, Вклад).

 

В отношении R3 (Сном, Сфам, Лном) объединим зависимости Сном ® Сфам и Сном ® Лном в зависимость Сном ® Сфам, Лном.

 

Возможные ключи: Сном Детерминанты: Сном Отнонение находится в НФБК
Рис. 6.29 Отношение R3 (Сном, Сфам, Лном).

 

 

Возможные ключи: <Проект, Квартал, Вклад> Детерминанты: <Проект, Квартал, Вклад> Отнонение находится в НФБК
Рис. 6.30 Отношение R4 (Сном, Проект, Квартал, Вклад).

 

 

Таким образом, в результате декомпозиции мы получили следующие отношения:

 

R2 (Лном, Тном) – находится в НФБК

R3 (Сном, Сфам, Лном) – находится в НФБК

R4 (Сном, Проект, Квартал, Вклад) – находится в НФБК

 

Таблицы 6.21-6.23 демонстрируют отношения R2, R3, R4 полученные в результате декомпозиции универсального отношения R.

 

Таблица 6.21 R2. Таблица 6.22 R3.   Таблица 6.23 R4.
Лном Тном   Сном Сфам Лном   Сном Проект Квартал Вклад
25АП 5-17   Иванов 25АП   РКТ14 1990,3
4КТ 8-29   Николаев 4КТ   Зенит 1990,3
14ММ 4-85   Андреев 25АМ   ВКТ14 1990,4
      Зайцев 14ММ   ВТА2 1990,4
              ВКТ14 1990,3
              ВТА8 1990,4
              ВКТ14 1990,4
              Зенит 1990,3
              ОТР6 1990,4
              ВКТ14 1990,4
              ОВ77 1990,3

 

Проверка на наличие аномалий в отношениях базы данных “Начальник отдела”

 

Присутствуют ли в этой базе данных аномалии вставки, удаления или обновления ?

Проверяем базу данных запросами взяв их из темы 6.3.

 

Вставка. На работу в лабораторию 25АР приняли Сорокина, его номер 687. Эта информация помещается в отношение R3 <687,Сорокин, 25АР>. Если теперь сделать запрос составить список сотрудников, вклад которых равен или меньше 2. Так как запрос будет обращен к отношению R4 будут выбранны сотрудники с табельными номерами 429, 289. После соединения таблиц мы получим ответ: Иванов и Андреев имели вклады в проекты меньше или равные трем.

Сорокина здесь нет, таким образом аномалия вставки, присутствующая в исходном отношении, устроена в результате декомпозиции.

 

Обновление. В исходном отношении возникла проблема при изменении телефона у Иванова на 9-17. Теперь при изменении телефона будут производится следующие действия: если мы сгенерируем запрос: из отношения R3 по табельному номеру Иванова будет определен номер лабратории в которой он работает, далее в отношения R2 изменим телефон лаборатории на 9-17. Теперь при запросе напечатать телефон лаборатории 25АР, мы получим ответ: 9-17.

Аномалия обновления, присутствующая в исходном отношении устранена в результате декомпозиции.

Удаление. Финансирование проекта ОВ77 прекращено. Информация о проекте должна быть удалена из БД. В отношении R3 нужно удалить все записи со значением Проект=ОВ77

В исходном отношении это правило к удалению из базы информации о сотруднике 559 Зайцев.

В нашем случае информация о сотрудниках храниться в R2 и не будет потеряна при удалении кортежей со значением Проект=ОВ77 из отношения R3.

Таким образом, в результате декомпозиции устранена аномалия удаления.

 

Цена за устранение аномалии – увеличение количества отношений. Теперь запросы к базе данных будут реализовываться более сложно, т.к. возможно понадобится прохождение цепочки из двух или трех отношений при поиске требуемых данных.

 


7. Семантическое моделирование или проектирования баз данных методом “Сущность-связь”

 

 

Декомпозиционный метод проектирования БД, который мы рассматривали в предыдущей лекции, пригоден при условии небольшого числа атрибутов. Если количество атрибутов очень велико то, декомпозиционный метод становится излишне громоздким и проектировать БД следует, используя другие методы.

 

Предлагается модель данных, называемая моделью “сущность-связь” (entity-relationship model). Эта модель основывается на некоторой важной семантической информации о реальном мире. Вводится специальный диаграммный метод как средство проектирования баз данных.

 

 



<== предыдущая лекция | следующая лекция ==>
Пример удаления избыточных зависимостей с помощью правил вывода | Сущности и связи


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.