Добавил:
rushevamar@mail.ru Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпоры бд.docx
Скачиваний:
114
Добавлен:
17.06.2021
Размер:
4.93 Mб
Скачать

23. Связь между сущностями типа «многие ко многим». Ее преобразование при переходе к физической модели. Связи "многие ко многим"

При установлении связи "многие ко многим" каждой строке таблицы А может соответствовать множество строк таблицы Б и наоборот. Такая связь создается при помощи третьей таблицы, называемой соединительной, первичный ключ которой состоит из внешних ключей, связанных с таблицами А и Б. Например, между таблицами "Авторы" и "Книги" установлена связь вида "многие ко многим", задаваемая с помощью связей вида "один ко многим" между каждой из этих таблиц и таблицей "АвторыКниг". Первичный ключ таблицы "АвторыКниг" - это сочетание столбцов "ИД_автора" (первичного ключа таблицы авторов) и "ИД_книги" (первичного ключа таблицы заголовков).

Преобразование связи «многие-ко-многим»

Как известно, связи M:M между таблицами баз данных в реляционной модели не поддерживаются. Если при создании связи M:M в логической модели в меню Model/Model Properties была отмечена позиция Many-to-Many Relationships with Association Table, топри переходе к физической модели вместо связи M:M будет создана связующая таблица, с которой таблицы, соответствующие сущностям, связанным отношением M:M, будут связаны обычной для реляционных моделей связью 1:M.  

Полученную таблицу можно переименовать, назвав ее, например, «Владение предметом».    Если при создании связи M:M в логической модели в меню Model/Model Properties позиция Many-to-Many Relationships with Association Table не была отмечена, то при переходе к физической модели связующая таблица создана не будет. Если все-таки надо, чтобы такая таблица была создана (а в подавляющем большинстве случаев это именно так), то можно воспользоваться возможностью трансформации модели. Для этого надо выделить связь и нажать на кнопку Many to Many Transform. И далее, следуя подсказкам системы, надо задать имя создаваемой связующей таблицы и имя трансформации.    В процессе создании ER-модели может возникнуть ситуация, что, уточняя и расширяя модель, в связующую таблицу будут введены дополнительные колонки (т.е. для связи будут заданы характеризующие ее свойства).

Эта связь каждому кортежу 1-ой сущности ставит в соответствие любое (в т. ч. 0) число кортежей 2-ой сущности и наоборот.

В отличии от связей 1:1 и 1:M, связь М:М трудно реализовать в физической модели данных, поэтому эту связь при переходе к физической модели преобразуют в 2 связи 1:М путем создания доп. сущностей. Последняя снабжается первичным ключом, составленным из ключей исходных сущностей.

24.Нормализация данных. Первая нормальная форма.

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

Процесс нормализации – постепенное приведение сущности к нормальным формам

Определение 1: Атрибут Б сущности функционально зависит от А этой же сущности, если каждому значению атрибута А соответствует точно 1 значение атрибута Б. (А однозначно определяет В).

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

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