Понятие Отношение реляционной БД, свойства. Степень и мощность отношения
Отношение – представляет собой множество однотипных кортежей. Это означает что все кортежи отношения формируются по одной схеме: первые элементы берутся из первого домена, вторые из второго домена и т.д. С точки зрения обработки данных отношение представляет собой простую двумерную таблицу. Степень отношения – число атрибутов(столбцов) отношения. Мощность отношения- текущее число кортежей отношения. Степень отношения обычно не изменяется после создания отношения, но его мощность будет колебаться по мере добавления новых и удаления старых кортежей.Свойства отношений свойства отношений
1) Отсутствие кортежей-дубликатов.Из этого свойства вытекает наличие у каждого отношения так называемого первичного ключа - набора атрибутов, значения которых однозначно определяют кортеж отношения. Для каждого отношения по крайней мере полный набор его атрибутов обладает этим свойством.2) Отсутствие упорядоченности кортежей.Это свойство дает дополнительную гибкость СУБД при хранении баз данных во внешней памяти и при выполнении запросов к базе данных. Это не противоречит тому, что при формулировании запроса к БД можно потребовать сортировки результирующей таблицы в соответствии со значениями некоторых столбцов.3) Отсутствие упорядоченности атрибутов.Для ссылки на значение атрибута в кортеже отношения всегда используется имя атрибута. Это свойство позволяет, например, модифицировать схемы существующих отношений не только путем добавления новых атрибутов, но и путем удаления существующих атрибутов.4) Атомарность значений атрибутов.На пересечении строки и столбца должно находиться только одно значение атрибута. Не может быть составного заголовка атрибута.
9.Правила генерации отношений БД для бинарных связей с показателем кардинальности 1:n.
Правило 1. Если показатель кардинальности бинарной связи равен 1:n и класс принадлежности n-связной сущности является обязательным, то достаточным явл.использование 2 отношений, по одному на каждую сущность,при условии что ключ сущности каждой сущности служит в качестве первичного ключа для соответствующего отношения. Дополнительно ключ односвязной сущности должен быть добавлен как атрибут в отношение, отводимое n-связной сущности. Логическая структура БД будет включать в себя два отношения, в 1-первичный ключ атрибут НП,а во втором – НС, при этом во второе отношение надо добавить в качестве внешнего ключа атрибут НП: *ХАР-ПРОД(НП,НАИМ,ЕИ,УП..);*ХАР-СКЛ-РАСПР(НС,ЕС,МОЛ,…,НП)
Правило 2.Если показатель кардинальности бинарной связи равен 1:n и класс принадлежности n-связной сущности является необязательным, то необходимо формирование 3 отношений: по одному для каждой сущности, причем ключ каждой сущности служит первичным ключом соответствующего отношения, и одного отношения для связи. Связь должна иметь среди своих атрибутов ключ сущности от каждой сущности. Логическая структура БД будет включать в себя 3 отношения, в первых из которых первичным ключом является атрибут НП, во втором НС. В отношении для связи среди атрибутов должны быть ключи сущностей Продукт и Склад, НП и НС соответственно. Логическая структура БД будет выглядеть: *ХАР-ПРОД (НП,НАИМ,ЕИ,УП..);*ХАР-СКЛ(НС,ЕС,МОЛ..); *РАСПР(НП,НС..)