Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Замечание к методу декомпозиций




Всегда нужно руководствоваться правилом крайней правой функциональной зависимости. Если наоборот, то будет утеряна функциональная зависимость, которая имеет место.

 
 

Пусть R (А, В, С), то может быть:

В данном примере нельзя проводить декомпозицию по одной зависимости, так как вторая может быть потеряна. Нужно: R1(А, В); R2(С, B).

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

 

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

 

 

Существуют функциональные зависимости, которые можно выразить через другие, для этого необходимо удалить избыточные функциональные зависимости. Это осуществляется через правила вывода, каждое из которых осуществляет связь между функционалами.

1. Правило рефлексивности.

Если X , Y , Y , то имеет место функциональная зависимость X.

2. Правило транзитивности.

 
 

Если A и В, то имеет место зависимость А, но она избыточна.

 


Таким образом,

       
   

 
 

3. Правило пополнения.

a) Если A функциональная зависимость, то имеет место зависимость А,Z, но она избыточна.

б) Если A функциональная зависимость, то имеет место зависимость А,Z, но она избыточна.

 

       
   
 

а) б)

 

 

4. Правило объединения.

Если A и А, то имеет место зависимость А, но она избыточна.

 
 

 

5. Правило декомпозиции.

Если А, то имеет место зависимость A и А, но они избыточны.

 
 

 

 

6. Правило псевдо-транзитивности.

Если А и В,С, то имеет место зависимость A,С, но она избыточна.

 
 

 

 

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

 
 

 

1. В. Избыточная зависимость .

 

 
 

2. Применяем правило декомпозиции.

 

 
 

 

3. Окончательно получаем.

 

 
 

 

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

Замечание: Строгая теория избыточных функциональных зависимостей включает в себя шесть правил вывода, три из которых правила рефлексивности, транзитивности, объединения называются аксиомами Армстронга, остальные правила выводятся из них.

С учётом этой теории можно уточнить алгоритм:

1. Построить универсальное отношение (то есть ненормализованное).

2. Определить все функциональные зависимости между атрибутами.

3. Удалить избыточные функциональные зависимости и получить минимальное покрытие с помощью правил вывода.

4. Декомпозировать универсальное отношение в набор, находящийся в НФБК.

5. Если может быть построено не одно минимальное покрытие, то выбирают лучшей вариант:

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

- Каждая функциональная зависимость входит не более чем в одно отношение.

- Набор функциональных зависимостей должен совпадать с минимальным покрытием.

б) В полученном наборе отношения могут быть избыточны. Отношение R1 является избыточным в наборе отношения R, если все атрибуты R1 целиком входят в некоторое отношение R или в некоторое соединение других отношений БД. Если такие отношения присутствуют, то их удаляют.

 

 

Проектирование БД в терминах “сущность” - “связь”.

 

 
 

 

ЕR диаграмма (“сущность” - “связь”).

Рассмотрим данные диаграммы.

Пусть требуется показать все экземпляры сущности и явно указать все связи между ними.

 

 
 

Имеется связь M:M.

Рассмотрим ЕR диаграммы, которые отображают семантику предметной области.

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

 
 

 

 

Могут иметь место две различные ситуации:

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

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

Характеристика принадлежности на диаграммах ЕR - типа.

 

 

 
 

 

 

На этих диаграммах приписывают ключевые атрибуты.

По данным диаграммам можно сформировать бизнес правила:

1. Преподаватель может преподавать несколько предметов.

2. Преподаватель должен преподавать хотя бы один предмет.

3. Предмет может преподаваться более чем одним преподавателем.

4. Предмет может не преподаваться.

Процесс проектирования начинается с анализа предметной области, и с построения диаграмм ЕR - типа. При этом выписываются все бизнес правила, которые отражены на данной диаграмме.

 

Построение отношений на основе диаграмм ER-типа

 

Выделим сущности: преподаватель, студент, предмет.

Преподаватель - ТабПр

Студент - НомЗач

Факультет - КодФ

Декан - ТабДек

Кафедра - КодКаф

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

 

 


Теперь минимизируем связи (устанавливаем бизнес-правила):

 

Будем считать, что студент обучается на одном факультете.

Пусть на факультете обучается обязательно один студент.

Студент может изучать никакой предмет – быть в академическом отпуске.

Раз предмет ввели новый, следовательно, его еще никто не изучает, следовательно, преподаватель к этому предмету еще не приписан.

К каждой связи мы должны прописать четыре бизнес-правила, следовательно, всего 24 бизнес-правила.

Декан может преподавать, поэтому должна быть связь между деканом и преподавателем (этой связи нет – это ошибка нашей схемы).

Для устранения этой ошибки уберем сущность «декан», и установим связь «возглавляет» между факультетом и преподавателем.

Построим диаграмму по предметной области.

Теперь анализируем диаграмму. Анализируется каждая связь, и руководствуясь конкретными правилами, выписывают набор предварительных отношений.

Рассмотрим эти правила:

 

 
 
1.

 


ПреподавательПреподаетПредмет

 

П1 математика

П2 физика

П3 английский

П4 БД

 

Максимальное количество отношений можно построить:

ПрепПред (ТабПр, …, КодПр, …)

Правило № 1: Если имеет место бинарная связь 1:1 и класс принадлежности к обеим сущностям обязателен, то достаточно одного отношения, ключом которого может быть любая из сущностей.

 

2.

 

 


ПреподавательПреподаетПредмет

 

П1 математика

П2 физика

П3 английский

П4 БД

Сети

 

Это внешний ключ, который ссылается
Преподаватель (ТабПр, …, КодПр)

Предмет (КодПр, …)

 
 

 


Правило № 2: Если характер бинарной связи 1:1, и класс принадлежности одной сущности обязателен, а другой не обязателен, то строятся два отношения, каждое для соответствия сущности с ее первичным ключом. Ключевой атрибут сущности с необязательным классом принадлежности добавляется в отношение для сущности с обязательным классом принадлежности в качестве внешнего ключа.

 

3.

 

 


ПреподавательПреподаетПредмет

 

П1 математика

П2 физика

П3 английский

П4 БД

 

 

Преподаватель (ТабПр, …)

Предмет (КодПр, …)

ПрепПред (ТабПр, КодПр, …)

Правило № 3: Если характер бинарной связи 1:1 и класс принадлежности обеих сущностей не обязателен, то строятся три отношения по одному для каждой из сущностей с соответствующими первичными ключами, и одно для связи, где ключ составлен из первичных ключей обеих сущностей.

 

4.

   
 
 
 

 

 


ПреподавательПреподаетПредмет

 

П1 математика

П2 физика

П3 английский

П4 БД

сети

 

Минимум два отношения:

Преподаватель (ТабПр, …)

Предмет (КодПр, …, ТабПр)

Правило № 4: Если характер бинарной связи 1:n и класс принадлежности n-связной сущности обязателен, то независимо от класса принадлежности односвязной сущности строятся два отношения, по одному для каждой из сущностей с их первичными ключами. Кроме того, в отношение для n-связной сущности добавляется ключевой атрибут односвязной сущности в качестве внешнего ключа.

 

5.

   
 
 
 

 

 


ПреподавательПреподаетПредмет

 

П1 математика

П2 физика

П3 английский

П4 БД

сети

метрология

 

Правило № 5: Если характер бинарной связи 1:n и класс принадлежности n-связной сущности не обязателен, то независимо от класса принадлежности односвязной сущности строятся три отношения в соответствии с правилом № 3.

 

m
6.

   
 
 
 
 
 

 

 


ПреподавательПреподаетПредмет

 

П1 математика

П2 физика

П3 английский

П4 БД

сети

метрология

 

Правило № 6: Если характер бинарной связи m:n, то независимо от классов принадлежности сущностей к этой связи строятся три отношения, в соответствии с правилом № 3.


 

Сущность1 Сущность2 Отношение1 Отношение2 Отношение3
Характер множественности Класс принадлежности Характер множественности Класс принадлежности
  Обязателен   Обязателен (ключ1, …, ключ2, …) - -
  Обязателен   Необязателен (ключ1, …, ключ2) (ключ2, …) -
  Необязателен   Необязателен (ключ1, …) (ключ2, …) (ключ1, ключ2, …)
  Любой n Обязателен (ключ1, …) (ключ2, …, ключ1, …) -
  Любой n Необязателен (ключ1, …) (ключ2, …) (ключ1, ключ2, …)
m Любой n Любой (ключ1, …) (ключ2, …) (ключ1, ключ2, …)

 

 

 

 


Замечания распределений ключевых атрибутов.

После построения предварительных отношений, в которых записаны только ключевые атрибуты, необходимо приписать к соответствующим атрибутам ключевые атрибуты. В большинстве случаев эта задача оказывается неочевидной. Но могут встретиться ситуации, когда некоторые ключевые атрибуты трудно приписать к тому или иному атрибуту.

Одновременно выписываются и анализируется функциональные зависимости.

Если некоторым атрибутам невозможно найти однозначное место, то это говорит о том, что есть ошибка.

 

Нестандартные ситуации.

 

1. Использование связи более высокого порядка.

 

 

 


Теперь покажем связь более высокого порядка.

 

 


У каждого преподавателя есть предпочитаемая аудитория.

Конкретный предмет преподаватель предпочитает читать только в одной аудитории.

Один преподаватель для преподавания разных предметов может предпочитать разхные аудитории.

Правило: Если связь двухсторонняя, то необходимо использовать четыре отношения; по одному на сущность и одно для связи.

Преподаватель (ТабПр, …)

Предмет (КодПр, …)

Аудитория (НомАуд, …)

ППА (ТабПр, КодПр, НомАуд, …)

Для связи более высокого порядка используют аналогичное правило, при этом n-арная связь порождает (n + 1) отношения.

 

Ролевые сущности

 

Представление предметной области оказывается недостаточным для представления ее семантики.

 

 


Мастер (ТабМ, …)

Рабочий (ТабР, …,ТабМ)

Ключевые атрибуты, которые мы будем распределять: ФИО, Оклад, Норма, ТелР, ТелД.

Мастер (ТабМ, Оклад, ТелР,…)

Рабочий (ТабР, Норма, …,ТабМ)

На практике часто различают атрибуты: ФИОМ, ФИОР, ТелДМ, ТелДР – но это плохо!

Чтобы решить эту проблему, введем обобщающую сущность: служащий.

 

 


 

 


Проектирование схемы осуществляется с помощью правила ролей.

Служащий (ТабС, ФИО, ТелД)

Мастер (ТабМ, Оклад, ТелР)

Рабочий (ТабР, Норма, ТабМ)

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

 

Введение в SQL

 

SQL – это язык реляционных баз данных, это наиболее стандартизированный язык реляционных СУБД.

SQL был дополнен в 1992 году – SQL2.

SQL – это структурированный язык запроса (Structured Query Language).

SQL = DDL + DML

§ Имеется первичный ключ у каждого отношения

§ Столбцы считаются упорядоченными

§ Поименованными являются атрибуты

Пять основных элементов: Три основные функции:

SCHEMA CREATE

DOMAIN ALTER

TABLE DROP

VIEW

INDEX

 

DDL: CREATE, ALTER, DROP.

 

CREATE SCHEMA CREATE DOMAIN CREATE TABLE CREATE VIEW CREATE INDEX DROP SCHEMA DROP DOMAIN DROP TABLE DROP VIEW DROP INDEX
ALTER DOMAIN ALTER TABLE

 

 




Поделиться с друзьями:


Дата добавления: 2014-01-20; Просмотров: 482; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




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